💎 조건문 : 주어진 조건식의 결과에 따라 별도의 명령을 수행하도록 하는 제어문.
조건문과 반복문은 모두 제어문에 포함되며
제어문은 순차적 흐름을 명령문을 통해 제어하는것을 말한다
if (조건식1) {
조건이 참일때 실행하는 코드.
} else if (조건식2) { <= else if (생략가능)
조건식1의 결과가 false이고 조건2가 참일때 실행하는 코드
} else { <= else (생략가능)
위 조건식이 모두 false일때 실행하는 코드
}
예제)
int a = 2;
if (a > 2 ) {
System.out.prinln("1번 조건 true") => 출력 : 1번 조건 true (a가 3이상일 때)
} else if ( a == 2 ) {
System.out.prinln("2번 조건 true") => 출력 : 2번 조건 true ( a가 2일 때)
} else {
System.out.prinln("위 조건 모두 false") => 출력 : 위 조건 모두 false
(위 모든 조건이 false일 때)
}
💎 자바에서는 간단한 if / else 문은 삼항 연산자를 이용하여 간결하게 표현할 수 있다.
조건식 ? 반환값1 : 반환값2
물음표(?) 앞의 조건식에 따라 결괏값이 참(true)이면 반환값 1을 반환하고, 결괏값이 거짓(false)이면 반환값 2를 반환한다.
예제)
int num1 = 5, num2 = 7;
int result;
result = (num1 - num2 > 0) ? num1 : num2;
System.out.println("두 정수 중 더 큰 수는 " + result + "입니다.");
//출력 => 두 정수 중 더 큰 수는 7입니다.
💎 주어진 조건값의 결과에 따라 프로그램이 다른 명령을 수행하도록 하는 조건문
장점
- 가독성이 if문보다 뛰어나다.
- 컴파일러 입장에서 최적화가 쉬워 속도가 빠르다.
주의
- break : 코드의 실행을 중단시키는 키워드.
- switch case에서 break를 쓰지 않는다면 그 이후 등장하는 모든 case 절과 defalut 절을 실행하게된다
switch(조건값) {
case 값1:
조건에 값1 맞다면 실행하는 명령문;
break;
case 값2:
조건에 값2 맞다면 실행하는 명령문;
break;
default:
조건값이 어디에도 해당하지 않으면 실행하는 명령문;
break;
}
예제)
🎈 변수 c의 값과 case의 조건이 일치할때 해당 명령문이 실행된다.
char c = 'e';
switch(c) {
case 'a':
System.out.println("해당 문자는 a입니다.");
break;
case 'e':
System.out.println("해당 문자는 e입니다.");
break;
case 'i':
System.out.println("해당 문자는 i입니다.");
break;
case 'o':
System.out.println("해당 문자는 o입니다.");
break;
case 'u':
System.out.println("해당 문자는 u입니다.");
break;
default:
System.out.println("자음 혹은 대문자입니다.");
break;
}