조건의 경우의 수가 많으면 if문 보다 swich문을 사용하는 것이 더 간결하게 보인다. (사람마다 다름)
구조)
switch( 조건식 ) {
case 값1 :
// 조건식의 결과가 값1과 같은 경우
default :
// 조건식의 결과와 일치하는 case문이 없을 때 수행
}
ㅁ 조건식
조건식은 연산결과가 int형 범위의 정수값이어야 한다.
byte, short, char, int타입의 변수나 리터럴을 사용할 수 있다.
ㅁ case문
case문은 오로지 리터럴이나 상수만 허용한다. 변수는 불가능하다.
case문 이하에 있는 문장을 수행하고 break문을 만나면 switch문을 빠져나간다.
break문을 생략하면 , 다른 break문을 만나거나 switch문 {}의 끝을 만날 때까지 모두 수행한다.
/**
* 등급 계산기
*/
public class TestSwitch {
public static void main(String[] args) {
int score = 10 ;
switch ( score ) {
case 10 :
System.out.println("당신은 A등급입니다.");
break;
case 9 :
System.out.println("당신은 B등급입니다.");
break;
case 8 :
System.out.println("당신은 C등급입니다.");
break;
case 7 :
System.out.println("당신은 D등급입니다.");
break;
case 6 :
System.out.println("당신은 E등급입니다.");
break;
default:
break;
}
}
}
결과 )
당신은 A등급입니다.
break문 삭제하고 실행해 보겠다.
break문이 없으면 그다음 case문도 수행이 된다.
/**
* 등급 계산기
*/
public class TestSwitch02 {
public static void main(String[] args) {
int score = 10 ;
switch ( score ) {
case 10 :
System.out.println("당신은 A등급입니다.");
case 9 :
System.out.println("당신은 B등급입니다.");
case 8 :
System.out.println("당신은 C등급입니다.");
case 7 :
System.out.println("당신은 D등급입니다.");
case 6 :
System.out.println("당신은 E등급입니다.");
default:
}
}
}
결과)
당신은 A등급입니다.
당신은 B등급입니다.
당신은 C등급입니다.
당신은 D등급입니다.
당신은 E등급입니다.
'프로그래밍 > 자바(java)' 카테고리의 다른 글
java - 반복문 - for 문 (0) | 2019.06.25 |
---|---|
java - 랜덤함수 Math.random를 이요하여 1 ~ 100 까지 난수 값 얻기 (0) | 2019.06.25 |
java - 학점 계산기 만들기 (0) | 2019.06.25 |
java - 제어문 - 중첩 if문 (0) | 2019.06.25 |
java - 제어문 - if문 , if ~ else if 문 (0) | 2019.06.25 |