3.28 조건문 - if / switch
제어문 : 프로그램의 실행흐름을 제어
public static void main(String[] args) {
} // main : 실행진입점(Entry Point)
*제어문의 종류
조건문 / 반복문 / break문, continue문 (단독사용X)
< 조건문 >
1. if문
조건식
- true 또는 false값을 산출할 수 있는 연산식
- boolean 변수
- 조건식이 true이면 블록 실행하고 false 이면 블록 실행하지 않음
*if문
*if-else문
*if-else-if-else문
*Math.randon() 를 이용한 if-else문
- 주사위 눈 무작위 추출하기
< 1 ~ 6 값을 얻으려면 ? >
0.0 <= Math.random() < 1.0
( 0.0 * 6 ) <= Math.random() * 6 < ( 1.0 * 6 )
0 <= (int)(Math.random() * 6 ) < 6
(0+1) <= (int)(Math.random() * 6 ) +1 < (6+1)
1 <= (int)(Math.random() * 6 ) +1 < 7
*중첩 (Nested) if문
2. Switch문
변수나 연산식의 값에 따라 실행문 선택할 때 사용
case 값은 콜론(:)사용
break; - 파괴되고 Switch문을 빠져나간다.
break가 없으면 계속해서 다음 case 를 실행한다.
switch문은,
정수타입 / 문자 타입 / 문자열 타입만 사용 가능하다.
--> 실수타입을 넣게되면 오류 발생
double 타입으로 switch문을 만들어보았는데, 컴파일 오류가 발생한 것을 볼 수 있다.
오류 내용은 이렇다.
Cannot switch on a value of type double.
Only convertible int values, strings or enum variables are permitted