JAVA 조건문 if, switch
Written by munilive on (Updated: )if
와 switch
는 어떤 조건에 대하여 실행해야 할 구문을 나눌때 사용한다. if
와 switch
가 어떻게 다른지에 대하여 알아 보도록 하자.
if
- if 문은 if, if-else, if-else if 세가지 형태가 있다.
- if는 아래와 같은 형태로 사용된다.
if(조건식) { //조건식의 결과가 true 일 경우 실행 문장 } if(조건식) { //조건식의 결과가 true 일 경우 실행 문장 } else { //조건식의 결과가 false 일 경우 실행 문장 } if(조건식1) { //조건식1의 결과가 true일 경우 실행 문장 } else if(조건식2) { //조건식1의 결과가 false 이고, 조건식2의 결과가 true일 경우의 실행 문장 } else { //조건식1과 조건식2의 결과가 모두 false 일 경우의 실행 문장 }
if
예제
int i = 90;
if(i < 100) {
System.out.println(i + "는 100보다 작다");
}
//결과: 90는 100보다 작다
int i = 10;
if(i % 2 == 0) {
System.out.println(i + "는 짝수이다.");
} else {
System.out.println(i + "는 홀수이다.");
}
//결과: 10는 짝수이다.
int i = 8;
if(i > 9) {
System.out.println(i + "는 9보다 크다");
} else if(i > 8) {
System.out.println(i + "는 8보다 크다");
} else {
System.out.println(i + "는 8보다 작거나 같다");
}
//결과 : 8는 8보다 작거나 같다
switch
- switch문은 case문과 같이 사용된다.
기본 구조는 아래와 같다.
switch(조건식) { case 값1 : //조건식의 결과가 값1과 같으면 실행 되는 문장 break; 를 만날 때까지 실행된다. break; case 값2 : //조건식이 결과가 값2와 같으면 실행 된ㄴ 문장 break; 를 만날 때까지 실행된다. break; . . . default : (생략가능) //조건식의 결과와 일치하는 case 문이 없을 경우 실행된다. break;를 넣지 않아도 된다. }
- switch 문의 조건식의 계산결과는 int 범위 이하의 정수만 가능하며 변수를 줄 수 없다.
- 값과 상수만 가능하다.
- 조건식의 계산결과와 일치하는 case문에서 부터 실행하여 break;를 만날때까지 실행된다.
- case 문에서 종료를 알리는 break;를 삽입하지 않을 경우 해당 case문에서 부터 종료 } 가 나올 때까지 모두 실행 된다.
- default 문은 생략이 가능하다.
switch
예제
int i = 5;
switch(i) {
case 10 :
case 9 :
System.out.println("A등급");
break;
case 8 :
case 7 :
System.out.println("B등급");
break;
case 5 :
case 6 :
System.out.println("C등급");
break;
case 4 :
System.out.println("D등급");
break;
default :
System.out.println("F등급");
}
//결과: C등급