switch문)
switch문은 if문과 마찬가지로 조건 제어문이다. 하지만 switch문은 변수가 어떤 값을 갖느냐에 따라 실행문이 선택된다.
if문은 조건식의 결과가 참 또는 거짓 두가지밖에 없기 때문에 경우의 수가 많아 질수록 코드가 복잡해진다.
그러나 switch문을 이용하면 변수의 값에 따라 실행문이 결정되기 때문에 if문보다 코드가 간결하다.
public class SwitchEx {
public static void main(String[] args) {
// TODO Auto-generated method stub
int val = 2;
switch (val) {
case 1:
System.out.println("값1");
break;
case 2:
System.out.println("값2");
break;
case 3:
System.out.println("값3");
break;
default:
System.out.println("기본");
}
}
}
//출력 결과 : "값 2"
switch문은 괄호 안의 값과 동일한 값을 갖는 case로 가서 실행문을 실행시킨다.
case 끝에 break가 붙은 이유는 다음 case를 실행하지말고 swtich문을 빠져나기기 위함이고 break가 없으면 다음 case들을 연달아 실행하게 되는데 이때 case값과는 상관없이 실행된다.
만약 괄호 안의 값과 동일한 값을 갖는 case가 없으면 default로 가서 실행문을 실행시키고 default문은 생략이 가능하다.
switch문(2))
import java.util.Scanner;
public class SwitchEx2 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String inputString;
System.out.println("YES / NO (Y,N)?");
inputString = scanner.nextLine();
switch (inputString) {
case "y":
case "Y":
System.out.println("YES");
break;
case "n":
case "N":
System.out.println("NO");
break;
default:
System.out.println("Wrong answer");
}
}
}
키보드로 값을 입력받아 switch문을 실행시킬 수도 있다.
예를들어 게임에서 게임이 끝나고 다시 하시겠습니까를 구현하고자 할 때 YES, Y, y, NO, no, n 등 키보드 입력을 통해
제어할 수 있다.
'JAVA' 카테고리의 다른 글
[JAVA] 조건문과 반복문 (5) (0) | 2020.08.29 |
---|---|
[JAVA] 조건문과 반복문(4) - 구구단 / 별 찍기 (0) | 2020.08.29 |
[JAVA] 조건문과 반복문 (3) (0) | 2020.08.29 |
[JAVA] 조건문과 반복문 (3) (0) | 2020.08.29 |
[JAVA] 조건문과 반복문 (1) (0) | 2020.08.29 |