IT/JAVA

자바 제어문 (Control Flow Statement) 조건문 if문, switch문

바다, 2018. 1. 4. 14:09
반응형


자바 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 문으로 변경할 수 없습니다.

반응형