if 조건문에서 실행문이 1개일 경우만 {}생략이 가능
if ( 조건) { 실행문 }
조건식의 다양한 예:
| 조건식 | 조건식이 참일 조건 |
|---|---|
| 90 < = x && x < =100 | 정수 x가 90이상 100이하일때 |
| x < 0 | |
| x % 3 == 0 && x %2 =0 | 정수 x가 3의 배수이지만 2의배수가 아닐때 |
| ch ==’y’ | |
| ch == ‘ ‘ | |
| ‘A’ < = ch && ch < = ‘Z’ | 문자 ch가 대문자일때 |
| ‘a’ < = ch && ch < = ‘z’ | 문자 ch가 소문자일때 |
| ‘0’ < = ch && ch < = ‘9’ | 문자 ch가 숫자일때 |
| str.equals(”yes”) | 문자열 str의 내용이 “yes”일때 (대소문자 구분) |
| str.equalsIgnoreCase(”yes”) | 문자열 str의 내용이 “yes”일때 (대소문자 구분안함) |
=> 삼항 연산자로 변환이 가능하다.
if (조건이 참일때 실행) {(실행문}
}else{(조건이 참이 아닐때 실행문)
int value1 = ( 3 > 5) ? 6 : 9
system.out.prinln(value1)
=> 출력 : 9, 조건이 false 이므로 false에 있는 9 가 출력 Scanner sc = new Scanner (System. in ) // 1. 스캐너 선언
System.out.println(" 정수를 입력하세요 " ) ;
int num = sc.nextInt(); // 2. 정수를 입력받을 변수를 출력문 아래 넣는다.
System.out.println ( num + "은/는" + (num %2 == 0 ? "짝수" : "홀수")
출력 결과 >>

---
### if - else if 문 : 조건이 여러개인 경우
여러개 중의 하나 - 여러개의 조건식을 포함한 조건식
` if (조건 1) {조건1이 참일때 실행 } else if (조건 2) { 조건 2가 참일때 실행 }
//...else {조건에 존재하지 않을 경우 실행문}`
### 중첩 If문 - If문 안의 If
```java
if ( (*조건식1) int a < 100) {
if( a< 10 && a <30 (*조건식2)) {
system.out.println ( " 바보 ")
}else{
system.out.println ( "바보가 아니다")
}
} else {
// 조건식 1이 false일때 수행되는 문장들
switch 문을 사용하여 프로그램 하세요.
스캐너로 정수 1 을 입력받으면 "금메달입니다" 츨력
스캐너로 정수 2 를 입력받으면 "은메달입니다" 출력
스캐너로 정수 3 을 입력받으면 "동메달입니다" 출력
그 외의 값을 인풋 받으면 "메달이 없습니다" 출력
int num;
System.out.println("정수를 입력하세요. - > 메달의 색을 알 수 있습니다");
num = sc.nextInt();
switch (num) {
case 1:
System.out.println("금메달 입니다.");
break;
case 2:
System.out.println("은메달 입니다.");
break;
case 3 :
System.out.println("동메달입니다.");
break;
default:
System.out.println("메달이 없습니다.");
}
}
}
스캐너로 1월 ~ 12월 까지 월을 입력받아서 해당 월의 일수를 출력해 주세요
// 출력 : 1월은 31일 입니다
// month 월 day 일
Scanner sc = new Scanner (System.in);
System.out.println("1월부터 12월까지 월을 입력하면 해당 일수를 출력합니다");
int month = sc.nextInt();
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 9:
case 11:
System.out.println(month + "월 은/는" + " 31일 입니다.");
break;
case 2:
System.out.println(month+ "월 은/는"+"28일 입니다.");
break;
case 4: case 6: case 8: case 10: case 12:
System.out.println(month + "월 은/는" + "30일 입니다." );
default :
System.out.println("잘 못 입력하셨습니다.");
}
sc.close();
}
}
제약조건
1.Switch문의 조건식 결과는 정수 또는 문자열이어야한다.
2.case문의 값은 정수 상수(문자 포함), 문자열만 가능하며, 중복되지 않아야한다.