

중첩 switch문

if문과 switch문의 비교

[출처]자바의 정석
실습을 해보자.
public static void main(String[] args) {
// switch(변수/식) {
// case 값1 : 실행문1; break;
// case 값2 : 실행문2; break; ...
// default : 나머지 실행문; break; }
// break; switch문을 빠져나가는 구문
int num = 2;
switch (num) {
case 1: {
System.out.println("1 입니다.");
}
break;
case 2: {
System.out.println("2 입니다.");
}
break;
case 3: {
System.out.println("3 입니다.");
}
break;
default:
System.out.println("잘못된 입력입니다.");
break;
}
System.out.println("---------------");
// 1~3 까지의 수를 랜덤으로 추출하여 값이 1인지, 2인지, 3인지 판단하여 출력
int random = (int) (Math.random() * 3) + 1;
switch (random) {
case 1: {
System.out.println(random + "이 나왔습니다.");
}
break;
case 2: {
System.out.println(random + "이 나왔습니다.");
}
break;
case 3: {
System.out.println(random + "이 나왔습니다.");
}
break;
default:
System.out.println("1~3의 범위를 벗어났습니다.");
break;
}
System.out.println("---------------");
// 1 ~ 3 등급의 가격 출력
int index = 1; //등급
int val = 0;
switch (index) {
case 1: {
val += 1000;
}
case 2: {
val += 1000;
}
case 3: {
val += 1000;
}
System.out.println(index + "등급의 가격은 " + val + "원 입니다.");
break;
default:
System.out.println("1 ~ 3등급 까지만 취급합니다.");
break;
}
}
public static void main(String[] args) {
// 숙제 (클럽에 제출)
// 정수 2개와 연산자 하나를 입력받아 두 정수의 연산을 출력
// 연산자는 + - * / % 중 하나를 입력받기
// ex) 3 2 + => 3 + 2 = 5
// ex2) 3 2 - => 3 - 1 = 2
// ex3) 3 2 * => 3 * 2 = 6
Scanner scan = new Scanner(System.in);
System.out.println("첫번째 숫자를 입력 하세요. (정수)");
int num = scan.nextInt();
System.out.println("두번째 숫자를 입력 하세요. (정수)");
int num1 = scan.nextInt();
System.out.println("연산자를 입력 하세요. (+, -, *, /, %)");
char op = scan.next().charAt(0);
// switch() : 숫자는 그냥 입력 int num = 3
// char(한글자) ' ' 값을 입력받음
// String(문자열) " " 값을 입력받음
// + : 더하기, + : 연결연산자 (피연산자가 문자일 경우)
// 3 + 5 = 8 => 의미 없는 문자를 삽입하여 연산이 되지 않게함. ex) ""
int result=0;
switch(op) {
case '+':
result = num + num1;
break;
case '-':
result = num - num1;
break;
case '*':
result = num * num1;
break;
case '/':
result = num / num1;
break;
case '%':
result = num % num1;
break;
default:
System.out.println("잘못된 연산자 입니다.~!!");
break;
}
//op char 형태 : 정수 자료형
// + : 더하기, + : 연결연산자 (피연산자가 문자일경우)
// 3 + 5 = 8 => 의미 없는 문자를 삽입하여 연산이되지 않게함.
System.out.println(num + " " + op + " " + num1 + " = " + result);
scan.close();
}
public static void main(String[] args) {
// 랜덤으로 1부터 7까지의 숫자를 발생시켜
// 1 = 일요일, 2 = 월요일, 3 = 수욜일... 7 = 토요일
int random = (int)(Math.random()*7)+1;
switch (random) {
case 1:
System.out.println("일요일 입니다.");
break;
case 2:
System.out.println("월요일 입니다.");
break;
case 3:
System.out.println("화요일 입니다.");
break;
case 4:
System.out.println("수요일 입니다.");
break;
case 5:
System.out.println("목요일 입니다.");
break;
case 6:
System.out.println("금요일 입니다.");
break;
case 7:
System.out.println("토요일 입니다.");
break;
default: // 생략가능
break;
}
}'Java 공부 기록' 카테고리의 다른 글
| break문, continue문 (0) | 2023.06.06 |
|---|---|
| 반복문(for문) (0) | 2023.06.06 |
| 조건문(if문) (0) | 2023.06.06 |
| TypeCasting(형변환) (0) | 2023.06.06 |
| Operator(연산자) (0) | 2023.06.06 |