JAVA 웹 개발/1. JAVA
02. 연산자
코딩 펭귄
2022. 5. 10. 11:49
📅 2021.08.10 ~ 2021.08.11
연산자의 종류
- 단항 연산자 : 항이 하나밖에 없는 경우 사용되는 연산자이다.
- 논리 부정 연산자 (!) : 논리값을 반대로 사용하려고 하는 경우 사용되는 연산자이다. (ex. !true = false)
- 증감 연산자 (++, —) : 증가/감소 시 사용하는 연산자로, 1을 더하거나 뺄 때 사용한다. 위치에 따라 전위 연산과 후위 연산으로 구분한다.
전위 연산 : 먼저 연산 후 다른 연산을 실행한다.
후위 연산 : 다른 연산을 우선 실행한 후 나중에 실행한다.
- 이항 연산자 : 두 개의 피연산자를 가지는 연산자이다.
- 산술 연산자 (+, -, *, /, %) : 산술 연산자 사이의 우선 순위는 수학에서와 동일하다.
% 연산자는 나머지 연산자로 모듈러라고도 하며, 나머지 값을 산출한다.
컴퓨터의 경우 int끼리의 연산은 나눗셈이라고 하더라도 실수가 아닌 정수로 사용되기 때문에 소수점 이하가 절삭된다. 따라서 소수점 이하를 표현해야 할 경우 double로 형변환을 해 주어야 한다.
0으로 나눌 경우 에러가 발생한다. - 비교 연산자 (==, !=, >, <, >=, <=) : 값이 같은지 다른지, 큰지 작은지 등을 비교해주는 연산자로 결과는 항상 논리값(true, false)으로 산출된다.
- 논리 연산자 (&&, ||) : 논리식을 판단하여 참 또는 거짓을 반환하는 연산자이다.
&& : 두 피연산자가 모두 true일 때만 true를 반환하며, 이외의 경우에는 false를 반환한다. (~이고, 그리고, ~이면서, ~고, 동시에 등의 말이 붙으면 AND 연산자를 사용한다)
|| : 두 피연산자 중 하나만 true인 경우에도 true를 반환하며, 둘 다 false일 경우에만 false를 반환한다. (~또한, ~거나 등의 말이 붙으면 OR 연산자를 사용한다.) - 복합 대입 연산자 (+=, -=, *=, /=, %=): 대입 연산자가 산술 연산자와 복합적으로 묶인 연산자이다.
먼저 연산한 후에 대입하는 연산자로 다음 두 코드는 동일한 결과를 산출한다.
하지만 산술 연산자로 연산 후 대입 연산자로 대입하는 것보다 복합 대입 연산자를 사용한 연산이 더 코드가 짧고, 연산 시간이 빠르다.int a = 10; a += 10; int b = 10; b = b + 10;
증감 연산자와 비슷해 보일 수 있으나, 증감 연산자는 1씩만 증가, 감소하고, 복합 대입 연산자는 원하는 값으로 연산이 가능하다.
- 산술 연산자 (+, -, *, /, %) : 산술 연산자 사이의 우선 순위는 수학에서와 동일하다.
- 삼항 연산자 (조건식?식1:식2 ): 조건식의 true/false에 따라 다른 값을 저장해주는 연산자이다.
조건식이 true이면 식1의 값을, false이면 식2의 값을 반환한다.
삼항연산자 안에 삼항연산자를 중첩하여 사용할 수도 있다.
String result = num > 0 ? "양수다" : (num == 0 ? "0이다" : "음수다");
num의 값은 '양수/음수/0' 3가지로 구분되므로 삼항 연산자를 중첩하여 사용하면 세 가지 경우에 대해 분기할 수 있다.