[JAVA]연산자
카테고리: JAVA
태그: Java
[6] 연산자
6.1. 항과 연산자
- 항(Operand) : 연산에 사용되는 값
- 연산자(Operator) : 항을 이용하여 연산하는 기호
6.2. 산술 연산자
- 사칙연산을 다루는 가장 기본적인 연산자
- 두 개의 피연산자를 가짐(= 이항 연산자)
- 왼쪽에서 오른쪽으로 진행
-
산술 연산자의 종류
연산자 설명 형태 + 왼쪽 피연산자에 오른쪽 피연산자를 더함 a + b - 왼쪽 피연산자에서 오른쪽 피연산자를 뺌 a - b * 왼쪽 피연산자에 오른쪽 피연산자를 곱함 a * b / 왼쪽 피연산자를 오른쪽 피연산자로 나눔 a / b % 왼쪽 피연산자를 오른쪽 피연산자로 나눈 후, 나머지 반환 a % b
6.3. 대입 연산자 (Assignment Operator)
=
- 변수에 다른 변수나 값을 대입하는 연산자
- 이항 연산자 중 우선 순위가 가장 낮은 연산자
- 왼쪽 변수 = 오른쪽 변수(또는 식, 값)
6.4. 복합 대입 연산자
- 장점 : 코드의 간결화
- 대입 연산자와 다른 연산자를 조합해 사용
-
복합 대입 연산자의 종류
연산자 설명 형태 += 왼쪽 피연산자에 오른쪽 피연산자를 더한 후, 결괏값을 다시 왼쪽 피연산자에 대입 a += b -= 왼쪽 피연산자에서 오른쪽 피연산자를 뺀 후, 결괏값을 왼쪽 피연산자에 대입 a -= b *= 왼쪽 피연산자에 오른쪽 피연산자를 곱한 후, 결괏값을 왼쪽 피연산자에 대입 a *= b /= 왼쪽 피연산자를 오른쪽 피연산자로 나눈 후, 결괏값을 왼쪽 피연산자에 대입 a /= b %= 왼쪽 피연산자를 오른쪽 피연산자로 나눈 후, 나머지를 왼쪽 피연산자에 대입 a %= b &= 왼쪽 피연산자를 오른쪽 피연산자와 비트 AND 연산한 후, 결괏값을 왼쪽 피연산자에 대입 a &= b |= 왼쪽 피연산자를 오른쪽 피연산자와 비트 OR 연산한 후, 결괏값을 왼쪽 피연산자에 대입 a |= b ^= 왼쪽 피연산자를 오른쪽 피연산자와 비트 XOR 연산한 후, 결괏값을 왼쪽 피연산자에 대입 a ^= b «= 왼쪽 피연산자를 오른쪽 피연산자만큼 왼쪽 시프트한 후, 결괏값을 왼쪽 피연산자에 대입 a «= b »= 왼쪽 피연산자를 오른쪽 피연산자만큼 부호를 유지하며 오른쪽 시프트한 후, 결괏값을 왼쪽 피연산자에 대입 a »= b »>= 왼쪽 피연산자를 오른쪽 피연산자만큼 부호에 상관없이 오른쪽 시프트한 후, 결괏값을 왼쪽 피연산자에 대입 a »>= b
6.5. 증감 (증가, 감소) 연산자
-
단항 연산자
연산자 설명 + 부호 유지 (의미X) - 부호 반전 ++ 항의 값에 1을 더함 – 항의 값에서 1을 뺌 - 변수의 값을 1 더하거나 1 뺄때 사용
-
연산자가 항의 앞에 있는가 뒤에 있는가에 따라 결과가 달라짐
형태 예시 설명 val = ++x; 먼저 x값이 1 증가한 후 val 변수에 대입 val = x++; val 변수에 기존 x값을 먼저 대입한 후 x값 1 증가 val = –x; 먼저 x값이 1 감소한 후 val 변수에 대입 val = x–; val 변수에 기존 x값을 먼저 대입한 후 x값 1 감소
6.6. 관계 연산자(비교 연산자)
- 이항 연산자
- 연산 결과에 따라 true(참) 또는 false(거짓)을 반환
-
조건문과 반복문의 조건식에서 주로 사용
연산자 설명 == 왼쪽 피연산자와 오른쪽 피연산자가 같으면 참을 반환 != 왼쪽 피연산자와 오른쪽 피연산자가 같지 않으면 참을 반환 > 왼쪽 피연산자가 오른쪽 피연산자보다 크면 참을 반환 >= 왼쪽 피연산자가 오른쪽 피연산자보다 크거나 같으면 참을 반환 < 왼쪽 피연산자가 오른쪽 피연산자보다 작으면 참을 반환함 <= 왼쪽 피연산자가 오른쪽 피연산자보다 작거나 같으면 참을 반환
6.7. 논리 연산자
- 연산 결과를 true 또는 false로 반환
-
두 명제가 모두 참이면 논리곱은 참. 두 명제 중 하나라도 참이면 논리함은 참. 참의 부정은 거짓, 거짓의 부정은 참.
연산자 설명 && 논리식이 모두 참이면 참 반환 (논리 AND 연산) || 논리식이 하나라도 참이면 참 반환 (논리 OR 연산) ! 논리식 결과가 참이면 거짓, 거짓이면 참 반환 (논리 NOT 연산) -
진리표(Truth Table)
A B A && B A ||B !A true true true true false true false false true false false true false true true false false false false true - SCE (Short Circuit Evaluation)
- 최단 거리 평가
- 연산 효율 및 속도 향상을 위해 불필요한 연산은 수행하지 않는 기능
- 논리곱 : 앞쪽 논리식이 거짓이면 뒤쪽 계산 미수행
- 논리합 : 앞쪽 논리식이 참이면 뒤쪽 계산 미수행
- 논리 연산의 모든 항이 실행되지 않는 경우
6.8. 조건 연산자
- 삼항 연산자
조건식 ? 결과1 : 결과2
- 조건식이 참이면 결과1, 조건식이 거짓이면 결과2 반환
- 조건문을 간략하게 표현하는 용도로도 사용 가능
댓글 남기기