자바 프로그램은 main() 메소드에서 실행되는데, 위에서 아래로 실행되는 흐름을 가지고 있다.
개발자는 제어문(흐름 제어문)으로 실행 흐름을 원하는 방향으로 바꿀 수 있다.
제어문의 종류에는 조건문과 반복문이 있다.
조건식에 따라 실행문이 실행된다.
조건문의 종류로는 if문, swith문이 있다.
조건식 결과의 논리값(true, false)에 따라 실행할 실행문이 결정된다.
조건식에는 논리값을 산출하는 연산식(비교, 논리)과, boolean 타입의 변수가 올 수 있다.
조건식이 true가 되면 중괄호 내부를 실행한다.
if (조건식) {
// 실행문A
}
// 실행문B
int score = 97;
if (score >= 90) {
System.out.println("시험 점수는 A 입니다.");
}
if (score < 90) {
System.out.println("시험 점수는 B 입니다.");
}
시험 점수는 A 입니다.
조건식의 결과에 따라 실행 블록이 선택된다.
▪︎ 조건식이 true이면 if문의 중괄호 내부를 실행한다.
▪︎ 조건식이 false이면 else문의 중괄호 내부를 실행한다.
if (조건식) {
// 조건식이 true
// 실행문A
} else {
// 조건식이 false
// 실행문B
}
// 실행문C
int score = 87;
if (score >= 90) {
System.out.println("시험 점수는 A 입니다.");
} else {
System.out.println("시험 점수는 B 입니다.");
}
시험 점수는 B 입니다.
조건식이 여러 개인 if문, else if문은 개수의 제한이 없다.
▪︎ 조건식1이 true가 되면 if 중괄호 내부를 실행한다.
▪︎ 조건식2가 true가 되면 else if 중괄호 내부를 실행한다.
▪︎ 조건식1과 조건식2가 모두 false가 되면 else 중괄호 내부가 실행된다.
if (조건식1) {
// 조건식1이 true
// 실행문A
} else if (조건식2) {
// 조건식2가 true
// 실행문B
} else {
// 실행문C
}
// 실행문D
int score = 77;
if (score >= 90) {
System.out.println("시험 점수는 A 입니다.");
} else if (score >= 80) {
System.out.println("시험 점수는 B 입니다.");
} else {
System.out.println("시험 점수는 C 입니다.");
}
시험 점수는 C 입니다.
변수가 가지고 있는 값에 따라 실행할 실행문이 결정된다.
if문 보다 코드가 간결하다.
자바 7버전부터 switch(변수) 부분에 정수가 아닌 문자열을 입력할 수 있다.
break
switch문을 종료한다.
변수의 값이 값1이라면 값2, default는 실행되지 않는다.
작성하지 않으면 변수가 해당하는 값 아래에 위치한 case문을 모두 실행한다.
default
생략 가능하여 필요에 따라 사용한다.
default안의 블록만 실행되고 switch문이 종료되므로 break를 생략해도 된다.
▪︎ 변수의 값이 값1이면 첫번째 case 코드를 실행한다.
▪︎ 값2라면 두 번째 case 코드를 실행한다.
▪︎ 값1과 값2가 모두 아니면 default 코드를 실행한다.
switch(변수) {
case 값1:
// 변수가 값1일 경우
// 실행문A
break;
case 값2:
// 변수가 값2일 경우
// 실행문B
break;
default:
// 변수가 값1, 값2 모두 아닐 경우
// 실행문C
}
혼공자 강의를 기반으로 작성하였습니다. 🙏
18강