본문 바로가기

반응형

프로그래밍언어/JAVA

(61)
[JAVA] 연산자 - 논리 연산자 1. 논리 연산자 (&&, ||, !) 논리 연산자 '&&' 는 AND에 해당하며, 두 피연산자가 모두 true일 때만 true를 결과로 얻는다. '||'는 OR에 해당하며, 두 피연산자 중 하나만 true이어도 true를 결과로 얻는다. 논리 연산자는 피연산자로 boolean 또는 boolean 값을 결과로 하는 조건식만을 허용한다. - 논리 연산자의 연산결과 x y x || y x && y t t t t t f t f f t t f f f f f - 효율적인 연산 (short circuit ecaluation) 논리 연산자의 특징 중 하나는 효율적인 연산을 한다는 것이다. '||' 연산자의 경우 하나의 피연산자만 참이어도 true를 반환하기 때문에 좌측의 피연산자가 참인 경우 우측 피연산자는 평가하지..
[JAVA] 연산자 - 비교 연산자 비교 연산자는 두 피연산자를 비교하는 데 사용되는 연산자이다. 주로 조건문과 반복문의 조건식에 사용되며, 연산결과는 오직 true와 false 둘 중의 하나이다. 비교 연산자 역시 이항 연산자이므로 비교하는 피연산자의 타입이 서로 다를 경우에는 자료형의 범위가 큰 쪽으로 자동 형변환하여 피연산자의 타입을 일치시킨 후에 비교한다. 1. 대소비교 연산자 (, =) 두 피연산자의 값의 크기를 비교하는 연산자이다. 비교 결과에 따라 참인 경우 true, 거짓인 경우에는 false를 반환한다. 기본형 중에서는 boolean형을 제외한 나머지 자료형들을 다 피연산자로 사용할 수 있지만 참조형은 피연산자로사용할 수 없다. 2. 등가비교 연산자 (==, !=) 두 피연산자의 값이 같은지 또는 다른지를 비교하는 연산자이..
[JAVA] 연산자 - 산술 연산자 1. 사칙 연산자 (+, -, *, /) 사칙 연산자는 프로그래밍에서 가장 빈번하게 사용되는 연산자로 +, -, *, / 로 이루어져 있으며, *와 /의 연산에서의 우선순위가 +, - 보다 높다. 나누기의 경우 피연산자가 정수형인 경우 나누는 수로 0을 사용할 수 없다. 만일 0으로 나눈다면 실행 시에 에러가 발생한다. 또한 나머지의 결과는 피연산자의 타입을 따라간다. 10 (int) / 4 (int) -> 2 (int) // 소수점 이하는 버린다. 나누기 연산자의 두 피연산자가 모두 int 타입인 경우 연산결과 역시 int 타입이다. 그렇기 때문에 실제 결과가 2.5이어도 int 타입의 값인 2를 결과로 가지게 된다. 이때 반올림이 발생하지 않는다. 그래서 정확환 결과를 얻기 위해서는 정수형과 정수형의..
[JAVA] 연산자 - 단항 연산자 1. 증감 연산자 (++, --) 증감연산자는 피연산자에 저장된 값을 1 증가 또는 감소시킨다. 증감연산자의 피연산자로 정수와 실수 모두 가능하지만 상수는 값을 변경할 수 없기 때문에 불가능하다. 증감연산자는 값을 가져와 연산을 수행하고 해당 값으로 피연산자의 값을 변경한다. 증가 연산자 (++): 피연산자의 값을 1 증가시킨다. 감소 연산자 (--): 피연산자의 값을 1 감소시킨다. 일반적으로 단항 연산자는 피연산자의 왼쪽에 위치하지만 증감 연산자는 양쪽 모두 가능하다. 피연산자의 왼쪽에서는 전위형 (prefix), 피연산자의 오른쪽에서는 후위형 (postfix)라고 한다. 전위형과 후위형 모두 같은 연산을수행하지만 수식이나 메서드 호출에 사용되는 경우 연산이 수행되는 시점이 달라지기 때문에 결과가 달..
[JAVA] 연산자 (Operator) 연산자는 '연산을 수행하는 기호'를 말한다. 자바는 사칙연산 (+, -, *, /)를 비롯한 다양한 연산자들을 제공한다. 1. 연산자와 피연산자 연산자가 연산을 수행하기 위해서는 연산의 대상이 필요한데, 이것을 '피연산자 (operand)' 라고 한다. 피연산자로는 상수, 리터럴, 변수 또는 수식 등을 사용할 수 있다. 연산자 (operator): 연산을 수행하는 기호 피연산자 (operand): 연산자의 작업 대상 x + 3 - 연산자: '+' - 피연산자: 'x', '3' '+' 연산자는 두개의 피연산자를 더해서 결과를 반환한다. 이와 같이 대부분의 연산자는 두개의 피연산자를 필요로 하며, 하나 또는 세개의 피연산자를 필요로 하는 연산자도 있다. 연산자는 연산을 수행한 후 항상 결과값을 반환한다. 2..
[JAVA] 형변환 (casting) 1. 형변환이란? 모든 변수와 리터럴에는 타입이 있다. 프로그래밍을 하다보면 서로 다른 타입간의 연산을 수행해야 하는 경우가 있는데, 이때 각 타입을 일치시켜야 하는데 변수나 리터럴의 타입을 다른 타입으로 변환하는 것을 형변환 이라고 한다. 2. 형변환 방법 형변환을 하는 방법은 형변환시킬 변수나 리터럴 앞에 변환하고자 하는 타입을 괄호와 함께 붙여주면 된다. char id = 's'; int numId = (int)id; // (타입) 피연산자변수 // char형 id -> int형으로 변환 이떄 사용되는 괄호는 캐스트 연산자 또는 형변환 연산자라고 한다. 형변환을 한다고 하여 피연산자가 되는 변수의 타입 자체가 변경되지는 않고 다만 변수의 값을 변환된 값으로 반환될 뿐이다. 기본형 (primitive..
[JAVA] 변수 타입 - 기본형 (primitive type) 1. 논리형 (boolean) 논리형 타입에는 boolean 타입 한가지 밖에 없다. boolean 타입은 true와 false 중 하나를 저장할 수 있으며 디폴트 값은 false이다. true와 false 만 표현하면 되기 때문에 1bit만으로 구현 가능하지만 자바에서 데이터를 다루는 최소단위가 byte기 때문에 boolean의 크기가 1byte이다. 2. 문자형 (char) 문자형 역시 char 하나밖에 없다. 문자를 저장하기 위한 자료형이고 단 하나의 문자를 저장할 수 있다. char 타입의 변수에 문자를 저장하는데 실제로는 문자가 아닌 문자의 유니코드로 변환되어 정수값이 저장된다.그렇기 때문에 문자 리터럴이 아닌 정수값을 사용하여 유니코드를 직접 저장할 수도 있다. 만일 저장되어있는 문자의 유니코..
[JAVA] 진법 및 진법변환 1. 10진법과 2진법 인류는 대부분 10진법을 사용하여 수를 계산한다. 반면에 컴퓨터는 2진법을 기반으로 설계가 되었기 때문에 연산 시에 10진수 값을 2진수 값으로 변환해줘야 한다. 우리가 변수에 값을 저장할 때에도 10진법의 수가 2진법으로 변환되어 저장이 되어진다. 2진법의 각 자리는 0 아니면 1밖에 표현을 못하기 때문에 10진법의 수를 2진법으로 바꾸는 경우 10진법에 비해 많은 자리수를 필요로 한다. 2. 비트와 바이트 한 자리의 2진수를 bit라고 하며 1bit는 컴퓨터가 값을 저장할 수 있는 최소단위이다. 그러다 1bit는 너무 작은 값이기 때문에 1bit를 8개 묶어서 1byte로 정의하여 기본 단위로 사용한다. 이외에도 word라는 단위가 있는데 이는 CPU가 한번에 처리할 수 있는 ..

반응형