Java 초보자라면 반드시 알아야 할 연산자(operator)와 제어문(control statements)에 대해 자세히 정리했습니다. 자바의 핵심 문법을 한 번에 정리해봅시다.
1. 산술 연산자
산술 연산자는 숫자 계산을 할 때 가장 기본적으로 사용하는 연산자입니다.
연산자 | 설명 | 예제 | 결과 |
---|---|---|---|
+ | 덧셈 또는 문자열 결합 | 5 + 3 | 8 |
– | 뺄셈 | 5 - 3 | 2 |
* | 곱셈 | 5 * 3 | 15 |
/ | 나눗셈 (정수는 나머지 버림) | 10 / 3 | 3 |
% | 나머지 연산 | 10 % 3 | 1 |
🔍 TIP: /
연산자는 정수 나눗셈에서는 몫만 반환합니다. 실수 계산이 필요하면 double
로 캐스팅하세요.
int a = 10;
int b = 3;
System.out.println(a + b); // 13
System.out.println(a - b); // 7
System.out.println(a * b); // 30
System.out.println(a / b); // 3
System.out.println(a % b); // 1
2. 비교 연산자
두 값을 비교하여 참/거짓을 판별합니다. 조건문(if
)에서 자주 사용됩니다.
연산자 | 설명 | 예제 | 결과 |
---|---|---|---|
> | 크다 | 5 > 3 | true |
< | 작다 | 5 < 3 | false |
>= | 크거나 같다 | 5 >= 5 | true |
<= | 작거나 같다 | 3 <= 5 | true |
== | 같다 (기본형 비교) | 5 == 5 | true |
!= | 다르다 | 5 != 3 | true |
String s1 = new String("Java");
String s2 = new String("Java");
System.out.println(s1 == s2); // false (주소 비교)
System.out.println(s1.equals(s2)); // true (내용 비교)
⚠️ 주의: 문자열은 ==
이 아니라 반드시 .equals()
를 써야 합니다!
3. 논리 연산자
조건을 결합하거나 부정할 때 사용합니다.
연산자 | 설명 | 예제 | 결과 |
---|---|---|---|
&& | AND (모두 참이면 참) | true && false | false |
|| | OR (하나라도 참이면 참) | `true | |
! | NOT (부정) | !true | false |
boolean x = true;
boolean y = false;
System.out.println(x && y); // false
System.out.println(x || y); // true
System.out.println(!x); // false
4. 증감 연산자
변수의 값을 1 증가 또는 감소시킵니다. 전위(prefix)와 후위(postfix)의 차이에 주의하세요.
연산자 | 설명 | 예제 | 결과/설명 |
---|---|---|---|
++i | 전위 증가 | ++i | i를 먼저 증가시킴 |
i++ | 후위 증가 | i++ | i를 먼저 사용 후 증가 |
–i | 전위 감소 | --i | i를 먼저 감소시킴 |
i– | 후위 감소 | i-- | i를 먼저 사용 후 감소 |
int i = 5;
System.out.println(i++); // 5 (출력 후 증가 → i=6)
System.out.println(++i); // 7 (증가 후 출력)
5. 복합 대입 연산자
변수에 연산과 대입을 동시에 처리할 수 있어 코드가 간결해집니다.
연산자 | 설명 | 예제 | 결과 |
---|---|---|---|
+= | 덧셈 후 대입 | x += 3 | x = x + 3 |
-= | 뺄셈 후 대입 | x -= 3 | x = x – 3 |
*= | 곱셈 후 대입 | x *= 3 | x = x * 3 |
/= | 나눗셈 후 대입 | x /= 3 | x = x / 3 |
int x = 10;
x += 5; // x = 15
x -= 3; // x = 12
x *= 2; // x = 24
x /= 5; // x = 4
6. 자주 묻는 질문 (FAQ)
Q1. 문자열 비교할 때 왜 ==
쓰면 안 되나요?
👉 ==
는 주소값을 비교하므로, 문자열 내용이 같더라도 false가 나올 수 있습니다. .equals()
로 비교하세요.
Q2. /
연산자 결과가 소수점이 안 나와요.
👉 int
끼리 나누면 정수 몫만 반환됩니다. double
로 형변환하세요.
예: (double)10 / 3
→ 3.3333
📚 더 읽어볼만한 글
✅ 마무리하며
Java의 연산자와 제어문은 모든 로직의 기초입니다. 한 번 정리하고 넘어가면 고생이 줄어듭니다.
복붙할 수 있는 코드 예제도 있으니 실습하면서 직접 돌려보세요!
다음 글 보기 ▶ Phase 3. 연산자와 제어문 완전 정리
(Java 연산자, 비교·논리·증감·복합대입, 흐름 제어문까지 한 번에 정리)
답글 남기기