본문 바로가기

Language/Java

Java - 연산자

1. 산술 연산자

수학처럼 계산에 사용되는 연산자를 말한다.

연산자 설명 예시 의미
더하기 a = b + c a에 b+c를 대입한다
- 빼기 a = b - c a에 b-c를 대입한다
* 곱하기 a = b * c a에 b*c를 대입한다
/ 나누기 a = b / c a에 b/c를 대입한다 
% 나머지 a =b % c a에 b/c의 나머지를 대입한다

2. 대입 연산자 (=)

변수에 값을 대입하는 연산자이다.

연산자 설명 예시 의미
= 변수에 값을 대입 a = a +b 변수 a에 a+b의 결과를 대입한다
+= 더한 값을 대입 a +=  b 변수 a에 a+b의 결과를 대입한다
-= 뺀 값을 대입 a -= b 변수 a에 a-b의 결과를 대입한다
*= 곱한 값을 대입 a *= b 변수 a에 a*b의 결과를 대입한다
/= 나눈 값을 대입 a /= b 변수 a에 a/b의 결과를 대입한다
%= 나머지를 대입 a %= b 변수 a에 a%b의 결과를 대입한다

 

3. 증감 연산자

증감연산자는 정수형 변수의 값을 1 증가 시키거나 감소시킬때 사용한다.

연산자 설명 예시 의미
++ 변수의 값을 1 증가 a++(후치) / ++a(전치) a의 값을 1 증가시킨다
-- 변수의 값을 1 감소 a--(후치) / --a(전치) a의 값을 1 감소시킨다

 

📌 연산자의 위치에따라 연산을 수행하는 시점이 다르다.

// 전치
int a = 5;
int b = ++a;  
// a에 1을 더하고나서, b에 값을 대입한다. → a는 6으로 증가 후 b에 6이 할당됨

// 후치
int a = 5;
int b = a++; 
// b에 값을 먼저 대입하고 b에 1을 더한다. → b에 5가 할당되고, a는 6으로 증가


// 출력
int a = 1, b = 1;

System.out.println("전치의 결과는 " + ++a + "이다."); // 전치의 결과는 2이다.
System.out.println("후치의 결과는 " + b++ + "이다." + b++ + "이다."); // 후치의 결과는 1이다.2이다.

 

4. 비교 연산자

 

값이나 수치를 비교하여 조건식을 만들고, 그 결과에따라 처리를 바꾸는 연산자이다.

조건이 성립하는경우 true(참)을 반환하고, 성립하지않는 경우 false(거짓)을 반환한다.

연산자 설명 예시 의미
== 같다 a == b a와 b는 같다
< 작다 a < b a는 b보다 작다
> 크다 a > b a는 b보다 크다
<= 작거나 같다 a <= b a는 b보다 작거나 같다
>= 크거나 같다 a >= b a는 b보다 크거나 같다
!= 같지 않다 a != b a는 b와 같지 않다

 

5. 논리 연산자

 

참(true) 또는 거짓(false) 값을 처리하여, 여러 조건을 결합하거나 반전시키는 데 사용하는 연산자이다.

연산자 설명 예시 의미
&&  AND 조건 && 조건 양쪽이 모두 참일때 참
||  OR 조건 || 조건  
NOT !조건 참을 거짓으로, 거짓을 참으로 반전

 

6. 논리 조건 연산자

 

주로 삼항 연산자(Ternary Operator)라고도 불리며, 조건에 따른 값을 선택할 때 사용된다.

조건식 ? 조건이 true일 경우 :  조건인 false인 경우

 

조건식은 논리형(Boolean)을 가지기 때문에 조건식에 boolean형의 변수도 사용할 수 있다.

int score = 85;
        
String result = (score >= 90) ? "A학점" : (score >= 80) ? "B학점" : "C학점";

System.out.println("점수: " + score + " - 결과: " + result);  // 출력: 점수: 85 - 결과: B학점

 

연산자의 우선순위

우선순위 연산자 설명  동일한 우선순위시 연산 방향
1 (높음) [] () 괄호 (Grouping) → 
2 ++  --   ~  ! 증감 연산자, 비트 연산자, 논리 연산자 not
3 new  new 캐스트 연산자
4 *  /  % 산술 연산자 
5 + - 산술 연산자
6 <<  >>  >>> 쉬프트 연산자
7 <  >  >=  <=  instanceof 비교 연산자
8 ==   != 비교 연산자
9 & 논리 연산자
10 ^ 논리 연산자
11 | 논리 연산자
12 && 논리 연산자
13 || 논리 연산자
14 ?  : 조건 
15 =, +=, -=, *=, /=, %= ... &= , ^=  대입 연산자