Java의 연산자는 피연산자의 개수 및 역할에 따라 여러 종류로 나뉜다.
+, -, *, /, % (덧셈, 뺄셈, 곱셈, 나눗셈, 나머지)++, -- (변수의 값을 1 증가 또는 감소)++a): 값을 먼저 증가시킨 뒤 연산 진행a++): 연산을 진행한 뒤 값을 증가int a = 10;
int b = 3;
System.out.println(a / b); // 3 (정수 나눗셈은 소수점 버림)
System.out.println(a % b); // 1
int c = 5;
System.out.println(++c); // 6
System.out.println(c++); // 6 (출력 후 c는 7이 됨)
==, !=, >, <, >=, <= (참/거짓인 boolean 타입 반환)&& (AND), || (OR), ! (NOT)&& 연산에서 앞 조건이 false이면 뒤 조건은 평가하지 않는다.boolean isAdult = true;
boolean hasId = false;
if (isAdult && hasId) {
System.out.println("입장 가능");
} else {
System.out.println("입장 불가능");
}
+=, -=, *=, /=, %=조건식 ? 참일_때_값 : 거짓일_때_값int score = 85;
String result = (score >= 80) ? "합격" : "불합격";
System.out.println(result); // 합격
가장 기본적인 조건문으로, 조건식의 참/거짓 여부에 따라 실행할 블록을 결정한다.
int score = 75;
if (score >= 90) {
System.out.println("A 학점");
} else if (score >= 80) {
System.out.println("B 학점");
} else {
System.out.println("C 학점");
}
특정 변수의 값에 따라 다중 분기를 처리할 때 사용한다. Java 12 이상부터는 화살표 표기법(->)을 사용하는 향상된 switch 문(Switch Expressions)을 지원한다.
// 기존 switch 문
int day = 2;
switch (day) {
case 1:
System.out.println("월요일");
break;
case 2:
System.out.println("화요일"); // 실행
break;
default:
System.out.println("주말");
}
// Java 12+ Switch Expression
String dayName = switch (day) {
case 1 -> "월요일";
case 2 -> "화요일";
default -> "주말";
};
반복 횟수가 정해져 있을 때 주로 사용한다.
// 일반 for 문
for (int i = 0; i < 5; i++) {
System.out.println("i: " + i);
}
// 향상된 for 문 (Enhanced for)
int[] numbers = {10, 20, 30};
for (int num : numbers) {
System.out.println(num);
}
조건이 참인 동안 계속 반복한다. do-while 문은 조건 검사 전에 무조건 최초 1회 실행을 보장한다.
int count = 0;
while (count < 3) {
System.out.println("count: " + count);
count++;
}
int num = 5;
do {
System.out.println("최초 1회 실행 보장");
} while (num < 0);
break: 진행 중인 반복문이나 switch 문을 즉시 탈출한다.continue: 반복문의 나머지 코드를 실행하지 않고 다음 반복으로 건너뛴다.for (int i = 1; i <= 5; i++) {
if (i == 3) continue; // 3일 때 출력을 건너뜀
if (i == 5) break; // 5일 때 루프 탈출
System.out.print(i + " "); // 출력 결과: 1 2 4
}