연산자란?
자바 연산자는 프로그래밍에서 변수, 상수 또는 리터럴 간의 다양한 계산 및 조작을 수행하는 데 사용되는 기호나 키워드입니다. 이 연산자들을 사용하여 데이터를 처리하고 조작함으로써 프로그램이 원하는 동작을 수행하도록 할 수 있습니다.
연산자 종류
산술 연산자
가장 기본적인 연산자로, 사칙연산에 사용됩니다. 덧셈(+), 뺄셈(-), 곱셈(*), 나눗셈(/) 등이 포함됩니다.
연산자 | 설명 |
---|---|
+ | 덧셈을 수행합니다. |
- | 뺄셈을 수행합니다. |
* | 곱셈을 수행합니다. |
/ | 나눗셈을 수행합니다. |
% | 나머지를 반환합니다. |
int a = 10;
int b = 5;
int sum = a + b; // 15
int difference = a - b; // 5
int product = a * b; // 50
int quotient = a / b; // 2
Java비교 연산자
두 값을 비교하는 데 사용되며, 결과는 참(true) 또는 거짓(false)입니다.
연산자 | 설명 |
---|---|
== | 값이 같으면 true를 반환합니다. |
!= | 값이 다르면 true를 반환합니다. |
> | 왼쪽 값이 오른쪽 값보다 크면 true를 반환합니다. |
< | 왼쪽 값이 오른쪽 값보다 작으면 true를 반환합니다. |
>= | 왼쪽 값이 오른쪽 값보다 크거나 같으면 true를 반환합니다. |
<= | 왼쪽 값이 오른쪽 값보다 작거나 같으면 true를 반환합니다. |
int x = 5;
int y = 10;
boolean isEqual = (x == y); // false
boolean isNotEqual = (x != y); // true
boolean isGreater = (x > y); // false
boolean isLessOrEqual = (x <= y); // true
Java논리 연산자
논리 연산에 사용되며, 주로 조건문과 반복문에서 조건을 결정하는 데 활용됩니다.
연산자 | 설명 |
---|---|
&& | 논리 AND를 수행하며, 두 조건이 모두 true이어야 true를 반환합니다. |
|| | 논리 OR을 수행하며, 두 조건 중 하나라도 true이면 true를 반환합니다. |
! | 논리 NOT을 수행하여 값을 반전시킵니다. |
boolean condition1 = true;
boolean condition2 = false;
boolean andResult = (condition1 && condition2); // false
boolean orResult = (condition1 || condition2); // true
boolean notResult = !condition1; // false
Java대입 연산자
변수에 값을 할당하는 데 사용되며, 다양한 형태가 있습니다.
연산자 | 설명 |
---|---|
= | 오른쪽 값을 왼쪽에 대입합니다. |
+= | 왼쪽 값에 오른쪽 값을 더한 후 결과를 왼쪽에 대입합니다. |
-= | 왼쪽 값에서 오른쪽 값을 뺀 후 결과를 왼쪽에 대입합니다. |
*= | 왼쪽 값에 오른쪽 값을 곱한 후 결과를 왼쪽에 대입합니다. |
/= | 왼쪽 값을 오른쪽 값으로 나눈 후 결과를 왼쪽에 대입합니다. |
%= | 왼쪽 값을 오른쪽 값으로 나눈 나머지를 왼쪽에 대입합니다. |
int a = 10;
int b = 5;
a += b; // a는 15 (a = a + b 와 동일)
Java증감 연산자
변수를 1씩 증가 또는 감소시키는 데 사용됩니다.
연산자 | 설명 |
---|---|
++ | 변수의 값을 1 증가시킵니다. |
— | 변수의 값을 1 감소시킵니다. |
int count = 0;
count++; // count는 1 증가
Java삼항 연산자
삼항 연산자는 조건부 연산자로 불리며, 간단한 조건문을 한 줄로 표현할 때 사용됩니다.
연산자 | 설명 |
---|---|
? : | 조건식 ? 참일 경우의 값 : 거짓일 경우의 값 |
여기서 조건식은 참 또는 거짓을 판단하는 표현식이며, 참일 경우의 값은 조건식이 참일 때 반환되는 값이고, 거짓일 경우의 값은 조건식이 거짓일 때 반환되는 값입니다.
int x = 10;
int y = 20;
int max = (x > y) ? x : y;
Java이 코드는 변수 max에 할당되는 값을 결정할 때 조건식 (x > y)를 평가합니다. 만약 조건식이 참이라면 max에는 x의 값이 할당되고, 조건식이 거짓이라면 max에는 y의 값이 할당됩니다.
연산자 우선순위
연산자 우선순위를 높은 것에서 낮은 순으로 나열하겠습니다.
우선순위 | 종류 | 연산자 |
---|---|---|
1 | 괄호 | () |
2 | 단항 연산자 | ++ , — , ! , ~ , new , (type) |
3 | 산술 연산자 | * , / , % 우선, 그 다음에 + , – |
4 | Shift 연산자 | << , >> , >>> |
5 | 비교 연산자 | < , <= , > , >= , instanceof |
6 | 등식 연산자 | == , != |
7 | 비트 연산자 | & , ^ , | |
8 | 논리 연산자 | && , || |
9 | 삼항 연산자 | ? : |
10 | 대입 연산자 | = , += , -= , *= , /= , %= 등등 |
우선순위는 어떤 연산자가 다른 연산자보다 먼저 계산되어야 하는지를 결정하며, 이는 수식의 평가 순서를 제어합니다.
결론
자바의 다양한 연산자들은 프로그래밍에서 변수 및 데이터를 조작하는 데 필수적입니다. 이러한 연산자들을 잘 이해하고 활용하면 보다 효율적인 코드를 작성할 수 있습니다. 항상 연산자의 우선순위와 사용법을 주의깊게 살펴보는 것이 중요하겠습니다.