본 글에 사용된 코드와 이미지의 일부는 김영한 님의 『김영한의 자바 입문』 강의를 참조하여 발췌·활용하였습니다.
조건문
조건문이란 특정 조건에 따라서 다른 코드를 실행하는 것을 말한다.
조건문에는 if문 , switch문 이 있다.
먼저 if 문에 대해 알아보자.
if 문
if 문은 특정 조건이 참인지 확인하고, 그 조건이 참(true) 인 경우 특정 코드 블록을 실행한다.
if (condition) {
// 조건이 참일 때 실행되는 코드
}
추가로 if 문 다음에 실행할 명령이 하나만 있을 경우에는 { } 중괄호를 생략할 수 있다. 하지만 가독성 과 유지보수성 때문이라도 중괄호를 사용하는 것이 좋다.
else 문
else 문은 if 문에서 만족하는 조건이 없을 때 실행하는 코드를 제공한다.
if (condition) {
// 조건이 참일 때 실행되는 코드
} else {
// 만족하는 조건이 없을 때 실행되는 코드
}
else if 문
else if 문은 if 문의 조건이 거짓일 때, 다음 조건을 검사한다. 앞선 if 문이 참이라면 else if 문을 실행하지 않는다.
마지막 else 는 생략할 수 있다.
if (condition1) {
// 조건1이 참일 때 실행되는 코드
} else if (condition2) {
// 조건1이 거짓이고, 조건2가 참일 때 실행되는 코드
} else if (condition3) {
// 조건2이 거짓이고, 조건3이 참일 때 실행되는 코드
} else {
// 모든 조건이 거짓일 때 실행되는 코드
}
switch 문
switch 문은 if 문을 조금 더 편리하게 사용할 수 있는 기능이다. 조건식에 해당하는 특정 값으로 실행할 코드를 선택한다.
switch (조건식) {
case value1:
// 조건식의 결과 값이 value1일 때 실행되는 코드
break;
case value2:
// 조건식의 결과 값이 value2일 때 실행되는 코드
break;
default:
// 조건식의 결과 값이 위의 어떤 값에도 해당하지 않을 때 실행되는 코드
}
특징으로는 아래와 같다.
- 조건식의 결과 값이 어떤 case 의 값과 일치하면 해당 case 의 코드를 실행한다.
- break 문은 현재 실행 중인 코드를 끝내고 switch 문을 빠져나가게 한다.
- break 문이 없으면, 일치하는 case 이후의 모든 case 코드들이 순서대로 실행된다.
- default 는 조건식의 결과값이 모든 case 의 값과 일치하지 않을 때 실행된다.
switch 문 - 자바 14
자바 14부터는 새로운 switch 문이 정식 도입되었다.
public class Switch3 {
public static void main(String[] args) {
//grade 1:1000, 2:2000, 3:3000, 나머지: 500
int grade = 2;
int coupon = switch (grade) {
case 1 -> 1000;
case 2 -> 2000;
case 3 -> 3000;
default -> 500;
};
System.out.println("발급받은 쿠폰 " + coupon);
}
}
기존 switch 문과 차이는 다음과 같다.
- → 를 사용한다.
- 선택된 데이터를 반환할 수 있다.
삼항 연산자
if 문을 사용할 때 , 단순히 참과 거짓에 따라 특정 값을 구하는 경우가 있다.
public class CondOp1 {
public static void main(String[] args) {
int age = 18;
String status;
if (age >= 18) {
status = "성인";
} else {
status = "미성년자";
}
System.out.println("age = " + age + " status = " + status);
}
}
이 예제는 status 변수의 값이 달라지는 것을 알 수 있다.
이렇게 단순히 참과 거짓에 따라서 특정 값을 구하는 경우 삼항 연산자(조건 연산자) 라고 불리는 ? : 연산자를 사용할 수 있다.
public class CondOp2 {
public static void main(String[] args) {
int age = 18;
String status = (age >= 18) ? "성인" : "미성년자";
System.out.println("age = " + age + " status = " + status);
}
}
삼항 연산자는 (조건) ? 참 표현식 : 거짓 표현식 으로 표현할 수 있다.
반복문
반복문은 이름처럼 특정 코드를 반복해서 실행할 때 사용한다. 반복문에는 while, do-while, for 이 있다.
while 문
while 문은 조건에 따라 코드를 반복해서 실행할 때 사용한다.
while (조건식) {
// 코드
}
조건식을 확인하고, 참이면 코드를 실행, 거짓이면 while문을 벗어난다.
do-while 문
do-while 문은 조건에 상관없이 무조건 한 번은 코드를 실행한다.
do {
// 코드
} while (조건식);
break, continue
breadk 는 반복문을 즉시 종료하고 나간다.
continue 는 반복문의 나머지 부분을 건너뛰고 다음 반복으로 진행하는데 사용된다.
while(조건식) {
코드1;
break;//즉시 while문 종료로 이동한다.
코드2;
}
//while문 종료
---------------------------------------
while(조건식) {
코드1;
continue;//즉시 조건식으로 이동한다.
코드2;
}
for 문
for 문은 주로 반복 횟수가 정해져 있을 때 사용한다.
for (1.초기식; 2.조건식; 4.증감식) {
// 3.코드
}
for 문의 실행 순서는 다음과 같다.
- 초기식이 실행된다.
- 조건식을 검증한다.
- 참이면 코드 실행
- 거짓이면 for 문을 빠져 나감
- 코드를 실행한다.
- 코드가 종료되면 증감식을 실행한다.
- 다시 순서2 부터 시작한다.
초기식에 int i =1 이라고 썼을 때, 변수 i 를 카운터 변수라고 부른다.
for 문에서 초기식,조건식,증감식은 선택이고, 모두 생략이 가능하다. 생략이 가능하지만 각 영역을 구분하는 세미콜론(;) 은 유지해야 한다.
for (;;) {
// 코드
}
-> 무한 반복하는 코드'인프런 > 김영한 자바' 카테고리의 다른 글
| [김영한의 자바 입문] - 6. 입력 (0) | 2025.09.01 |
|---|---|
| [김영한의 자바 입문] - 5. 스코프 & 형변 (0) | 2025.08.29 |
| [김영한의 자바 입문] - 3. 연산자 (0) | 2025.08.27 |
| [김영한의 자바 입문] - 2. 변수 (0) | 2025.08.22 |
| [김영한의 자바 입문] - 1. 자바란? (0) | 2025.08.21 |