자바 if 문과 switch 문 정의 및 차이점
제어문 (Control Flow Statement)이란
- 제어문은 프로그램 실행 흐름을 프로그래머가 원하는 방향으로 바꿀 수 있도록 해주는 것입니다.
제어문의 종류
- 조건문(decision-making statements)
if문, switch문
- 반복문(looping statements):
for문, while문
- 분기문(branching statements):
break, continue, return
if문 이란
- 우선 if문은 조건식의 결과에 따라 블록 실행 여부가 결정됩니다.
조건식에는 boolean 변수 또는 true / false 값을 산출하는 연산식으로 이루어져 있으며,
true인 경우 블록을 실행하고 false 인 경우 블록을 실행하지 않습니다.
if문의 기본 문법은 아래와 같습니다.
if (조건식1) {
// 조건식1이 true인 경우 실행할 구문
} else if (조건식2) {
// 조건식2가 true인 경우 실행할 구문
} else {
// 위의 조건식에 해당되지 않는 나머지의 경우 실행할 구문
}
if 블록이 false 인 경우 다음 else if로 넘어가고 그 역시 false 라면 그 다음 조건으로 넘어가게 됩니다.
else if 를 사용하여 조건을 추가할 수 있고, else if 문의 수는 제한이 없습니다.
여러 개의 조건식 중에서 true가 되는 블록만 실행하고 전체 if문을 벗어나게 됩니다.
if 문은 중첩되어 사용할 수 있습니다.
switch문 이란
- if 문과의 차이점은 변수가 어떠한 값을 갖느냐에 따라 실행문이 선택되어 실행됩니다.
if문의 경우의 수가 많아질 수록 switch 문을 사용하는 것이 효과적입니다.
(if문 보다는 switch-case문이 가독성에 조금 더 유리합니다.)
switch문의 기본 문법은 아래와 같습니다.
switch(변수) {
case 입력값1:
// 변수가 입력값1 인 경우 실행할 구문
break;
case 입력값2:
// 변수가 입력값2 인 경우 실행할 구문
break;
default:
// 위의 case에 부합하지 않는 경우 실행할 구문
break;
}
switch 문의 괄호 안의 변수과 동일한 값을 갖는 case로 가서 실행문을 실행하게 됩니다.
그리고 특정 case를 실행 후 제어문을 빠져나가기 위해 break 문을 함께 사용합니다.
위의 예제의 각 case에 break문을 사용하지 않으면 부합되는 case를 실행하고 default 부분도 실행됩니다.
switch-case문으로 작성된 모든 코드는 if-else 문으로 변경이 가능하지만,
if-else 문으로 작성된 모든 코드를 switch 문으로 변경할 수 없습니다.
'IT > JAVA' 카테고리의 다른 글
자바 제어문 (Control Flow Statement) 반복문 (향상된) for문, (do) while문 (0) | 2018.01.23 |
---|---|
자바(Java) static 키워드 (0) | 2018.01.17 |
자바 제어문 (Control Flow Statement) 분기문 break문, continue문 (0) | 2018.01.04 |
자바 생성자 (Constructor) (0) | 2018.01.03 |
자바 this, this(), super, super() (0) | 2018.01.02 |