어떤 조건중에 하나를 선택해야 할 때 유용한 기법이다
if ~else 구문보다 편하고 깔끔하게 처리 할 수 있다.
단 한번의 연산(혹은 변수)으로 특정한 경우 하나를 선택한다.

package com.java.control.switch_;
import java.util.Scanner;
public class Switch01 {
public static void main(String[] args) {
// 제어문 >switch ~case(입력값을 출력값 연결)
System.out.println("다음중 가장 종아하는 계절을 선택하시오.");
System.out.println("1.봄 2.여름 3.가을 4.겨울");
Scanner scan = new Scanner(System.in);
int season = scan.nextInt();
switch (season) {
case 1:
System.out.println("나는 봄을 좋아합니다.");
break;
case 2:
System.out.println("나는 여름을 좋아합니다.");
break;
case 3:
System.out.println("나는 가을을 좋아합니다.");
break;
case 4:
System.out.println("나는 겨울을 좋아합니다.");
break;
default: //예외 처리 구문
System.out.println("1번부터 4번까 중에 선택해서 ,다시 입력 하세요");
}
}
}
package com.java.control.switch_;
import java.util.Scanner;
public class Switch02 {
public static void main(String[] args) {
// Switch 구문을 이용해서 성적 산출 프로그램 작성하시오.
int score = 0;
Scanner scan = new Scanner(System.in);
System.out.print("성적을 입력하세요 :");
score = scan.nextInt();
//아래에 Switch구문을 이용해서 만드세요
if (0 <= score && score <= 100) {
score=score/10; //94,98->9,100->10
switch(score) { //정수(1~10),문자,문자열
case 10:
case 9:
System.out.println("A학점 입니다.");
break;
case 8:
System.out.println("B학점 입니다.");
break;
case 7:
System.out.println("C학점 입니다.");
break;
case 6:
System.out.println("D학점 입니다.");
default:
System.out.println("F학점 입니다.");
}
// // if ~else if ~else
// if (90 <= score && 100 >= score) {
// System.out.println("A학점 입니다.");
// }
//
// else if (80 <= score && 90 > score){
// System.out.println("B학점 입니다.");
// }
//
// else if (70 <= score && 80 > score){
// System.out.println("C학점 입니다.");
// }
//
// else if (60 <= score && 70 > score){
// System.out.println("D학점 입니다.");
// }
//
// else {
// System.out.println("F학점 입니다.");
// }
} else {
System.out.println("점수를 다시 입력하세요");
}
}
}
package com.java.control.switch_;
import java.util.Scanner;
public class Switch02 {
public static void main(String[] args) {
// Switch구문을 이용해서 성적 산출 프로그램을 작성하시오.
int score = 0;
Scanner scan = new Scanner(System.in);
System.out.print("성적을 입력하세요 :");
score = scan.nextInt();
// if (0 <= score && score <= 100) {
**score = score / 10;// 94,95 -> 9, 100->10**
switch (score) { // 정수(1~10),문자,문자열, 실수 X, 조건식(비교) X
case 10:
// System.out.println("A학점 입니다.");
case 9:
System.out.println("A학점 입니다.");
break;
case 8:
System.out.println("B학점 입니다.");
break;
case 7:
System.out.println("c학점 입니다.");
break;
case 6:
System.out.println("D학점 입니다.");
break;
**case 5: case 4: case 3: case 2: case 1: case 0:
System.out.println("F학점 입니다.");
break;
default:
System.out.println("점수를 다시 입력하세요");**
}
// } else {
// System.out.println("점수를 다시 입력하세요");
// }
}// main
}