조건에 따라 무엇을 실행할지 판단하는 분기 구조
if (조건문 1) {
조건문 1을 만족할 때 실행할 내용;
} else if (조건문 2) {
조건문 2를 만족할 때 실행할 내용;
} else {
그 외의 상황에서 실행할 내용;
}
입력 값에 따라 어떤 case를 실행할지 판단하는 분기 구조
switch (입력 값) {
case 입력 값 1:
실행할 내용;
break;
case 입력 값 2:
실행할 내용;
break;
...
default:
실행할 내용;
break;
}
// Java 프로그래밍 - 조건문
public class Main {
public static void main(String[] args) {
// 1. 조건문 - if
System.out.println("== if ==");
int waterTemperature = 99;
if(waterTemperature >= 100) {
System.out.println("물이 끓습니다.");
} else {
System.out.println("물을 끓이는 중입니다.");
}
int score = 90;
char grade = 0;
if (score >= 90) {
grade = 'A';
} else if (score >= 80) {
grade = 'B';
} else if (score >= 70) {
grade = 'C';
} else {
grade = 'F';
}
System.out.println("grade = " + grade);
// 위 예제에서 grade가 77이라고 80이라고 한다면 'score >= 70'도 만족하지만
// if문은 switch문과 달리 한번 조건이 만족해서 실행을 하면, 그 아랫부분은 실행을 하지 않는다.
// 따라서 'score >= 80'일 때 실행하는 부분만 실행을 해서 B만 출력이 된다.
// 2. 조건문 - switch
System.out.println("== switch ==");
String fruit = "apple";
switch (fruit) {
case "apple":
System.out.println(fruit + "은 5000원 입니다.");
break;
case "blueberry":
System.out.println(fruit + "은 10000원 입니다.");
break;
default:
System.out.println("해당 과일이 없습니다.");
break;
}
// Q1. number의 값이 홀수인지 짝수인지 판단하는 코드를 작성하세요.
int number = 5;
if(number % 2 == 0) {
System.out.println("짝수입니다.");
} else {
System.out.println("홀수입니다.");
}
// Q2. 아래 주석은 위의 실습에서 진행한 score에 따라 grade를 출력하는 코드이다.
// 이를 switch 조건문 기반으로 바꿔보세요.
// int score = 90;
// char grade = 0;
// if (score >= 90) {
// grade = 'A';
// } else if (score >= 80) {
// grade = 'B';
// } else if (score >= 70) {
// grade = 'C';
// } else {
// grade = 'F';
// }
// System.out.println("grade = " + grade);
score = 90;
grade = 0;
switch (score / 10) {
case 10:
// break가 없으므로 탈출을 하지 않고 밑의 것이 실행된다.
case 9:
System.out.println("A");
break;
case 8:
System.out.println("B");
break;
case 7:
System.out.println("C");
break;
default:
System.out.println("F");
break;
}
System.out.println("grade = " + grade);
}
}