switch

doremi·2025년 2월 3일

Java

목록 보기
2/10
post-thumbnail

📖 switch

	switch (변수) {
	    case1:
	        // 변수 값이 값1과 같으면 실행할 코드
	        break;
	        
	    case2:
	        // 변수 값이 값2와 같으면 실행할 코드
	        break;
	        
	    default:
	        // 위의 모든 case에 해당하지 않을 때 실행할 코드
  • switch (order) : order 변수의 값을 여러 개의 case와 비교
  • case "값1": : (변수)"값1"이라면 해당 블록 실행
  • break; : switch 문을 빠져나감 (없으면 다음 case도 실행됨)
  • default: : 모든 case에 해당하지 않는 경우 실행

✍️ 예제

Scanner scan = new Scanner(System.in);
System.out.println("어떤 걸 드릴까요?");
String order = scan.nextLine();  // 사용자의 입력을 order 변수에 저장

switch (order) {
    case "아아":
    case "아메리카노":
        System.out.println("아메리카노 가격은 3000원입니다.");
        break;

    case "카푸치노":
        System.out.println("카푸치노 가격은 4500원입니다.");
        break;

    case "밀크티":
        System.out.println("밀크티 가격은 5000원입니다.");
        break;

    default:
        System.out.println("메뉴가 없습니다.");
}

scan.close();

📌 주의할 점

  1. break;를 꼭 써야 함
    break;가 없으면, 일치하는 case 이후의 모든 case가 실행됨
switch (order) {
    case "아아":
        System.out.println("3000원입니다.");
    case "카푸치노":
        System.out.println("4500원입니다."); // 실행됨 (break 없으면)
}   

➡️ 해결 방법: break;를 넣어야 함

  1. String, int, char, enum만 가능 (double 불가능)
    switch에서 double과 같은 실수형 데이터는 사용할 수 없음

👋 정리

switch는 하나의 변수 값을 여러 값(case)과 비교할 때 사용
if-else보다 가독성이 좋고 간결함
break;를 넣어야 불필요한 코드 실행을 방지
String, int, char 등의 데이터 타입을 사용할 수 있음

🌈 결론

  • 값을 단순 비교할 때 → switch
  • 범위나 복잡한 조건이 필요할 때 → if-else
profile
🌈오늘의 공부는 여기까지! ᕦ(ò_óˇ)ᕤ

0개의 댓글