-
- 설정한 [조건식]이 true일 경우에만 설정한 [실행구문]을 수행하는 문장이다
- 비교연산자와 논리연산이 반드시 등장함
- 조건식이란 true또는 false를 리턴하는 [비교연산식]또는 [논리연산식]을 의미한다
- 설정한 [조건식]이 true일 경우에만 설정한 [실행구문]만 실행하므로 [프로그램의 흐름]을 제어할수 있다.
- 조건문 종류에는 if 문 , switch 문이 있다.
if 문
📌형식1
if ~ else if ~ else 구문
👉if 구문 1개 , else if 구문1개 이상 , else 구문 1개 가 차례로 나오는 형식
if (조건식 1) {실행구문1;} else if (조건식 2) {실행구문2;} ~ else if (조건식 n) {실행구문n;} else {실행구문 m;}
- 조건식n 이 true 면 실행구문x를 실행하고 바로 else 구문{~} 다음으로 진행
- 조건식n 이 모두 false면 무조건 실행구문m을 실행한다.
- 결국 실행구문 1~m중에 무조건 1개는 실행된다.
📌형식2
if else 구문
👉if 구문 1개 , else 구문1개 가 차례로 나오는 형식.
if (조건식1) {실행구문1;} ~ else {실행구문m;}
- 조건식1이 true면 실행구문1을 실행하고 바로 else{~}구문 다음으로 진행한다.
- 조건식1이 false면 무조건 실행구문m을 실행한다.
- 결국 실행구문 1, m중에 무조건 1개는 실행된다.
📌형식3
if else if 구문
👉 if구문 1개, else if 구문 1개이상 이 차례로 나오는 형식이다.
마지막 else if 뒤에 else 구문이 없다.if (조건식1) {실행구문1;} else if (조건식2) {실행구문2;} ~ else if (조건식n) {실행구문n;}
- 조건식n이 true면 실행구문 n을 실행하고 바로 마지막 else if(~){~} 구문 다음으로 진행한다.
- 조건식 n이 모두 false면 실행구문 1~n까지 모두 실행되지 않는다.
- 결국 실행구문 1~n중에 0~1개 실행된다.
📌형식4
if 구문
👉 if구문 1개만 나오는 형식이다.
if구문뒤에 else if 또는 else구문도 없다.
if (조건식1) {실행구문1;}
- 조건식 1이 true면 실행구문 1을 실행함
- 조건식 1이 false면 실행구문1 실행되지 않고 그냥 넘어감
- 결국 실행구문 1~n중에 0~1개 실행된다.
switch 문
- 원하는 변수에 원하는 데이터가 있으면 설정한 실행구문을 실행한다.
- switch(변수)에서 변수의 자료형은 byte, short, int, char, String만 사용가능하다.
- 원래 String형은 사용불가하나 자바ver.7부터 사용가능해졌음
📌형식1
switch (변수) { case 데이터1 : 실행구문1; [break;] case 데이터2 : 실행구문2; [break;] ~ case 데이터n : 실행구문n; [break;] //break는 조건문에서는.switch문에서만 나옴 defalut : 실행구문m; [break;] }
- switch 영역안에 case구문이 1개 이상, 마지막에 defalut 구문이 1개가 나오는 형식이다.
- defalut는 if문의 else와 같다. > 데이터와 비교하지않고 바로 실행구문m 실행
진행과정
- 변수안의 데이터가 데이터x와 동일하면 실행구문x를 실행
- 실행구문x 바로 다음에
break가 있으면 ▷switch구문 탈출.
break가 없으면 ▷다음 case구문의 데이터 x와 비교하지 않고 무조건 실행구문x를 실행
break가 나올때 까지
변수안의 데이터가 데이터1~데이터n과 모두 다르면 무조건 실행구문m을 실행한다.
📌형식2
switch (변수) { case 데이터1 : 실행구문1; [break;] case 데이터2 : 실행구문2; [break;] ~ case 데이터n : 실행구문n; [break;] }
- switch 영역안에 case구문이 1개 이상나옴,
마지막에 defalut 구문이 없다 - case만 반복되는 구문은 맨 마지막의 break가 의미없음 어차피 빠져나온다.
- 변수 안의 데이터가 데이터1~데이터n 과 모두 다르면 실행구문은 1개도 실행 안된다.
진행과정
- 변수 안의 데이터가 데이터x 과 동일하면 실행구문x 을 실행
- 실행구문x 바로 다음에
break가 있으면 ▷switch구문 탈출.
break가 없으면 ▷ 다음 case 구문의 데이터x 와 비교하지 않고 무조건 실행구문n 을 실행.
break 가 나올때 까지
다음 case 구문의 데이터x 와 비교하지 않고 계속 실행구문n 를 실행함.
실행구문의 실행개수는 0~n개
📌형식3
switch (변수) { case 데이터1 : 실행구문1; [break;] <break의 의미가 없음 }
- switch 영역안에 case구문이 1개만 나온다
변수안의 데이터가 데이터1과 다르면 실행구문은 1개도 실행안됨
결국 실행구문의 실행개수는 0~1개
'JAVA' 카테고리의 다른 글
클래스(Class) (2) 2023.12.05 반복문 (1) 2023.12.05 연산자 (0) 2023.12.01 변수(variable) (2) 2023.11.30 자바의 자료형 (참조형) (0) 2023.11.30 - 설정한 [조건식]이 true일 경우에만 설정한 [실행구문]을 수행하는 문장이다