티스토리 뷰
자바에서 새로운 문법을 발견하였다.
아무래도 현재 만들고 있는 게임이 체스이다 보니, Pawn, Knight 각각에 따른 로직을 수행해야하기에, 자연스럽게 switch 구문에 대해서 더 자세히 알아보게 되었다.
이번 포스팅에서 다룰 Switch Expression은 Java 14이상 부터 사용 가능하다고 한다.
일단 먼저 Switch 구문을 이용한 간단한 성적 평가 예제를 보도록하자. (오리지날 switch 구문)
public class SwitchStatementExample {
public static void main(String[] args) {
String grade = "B";
String message;
switch (grade) {
case "A":
case "B":
message = "최고입니다 !";
break;
case "C":
message = "C등급입니다. 공부 더 하세요!";
break;
case "D":
case "F":
message = "장난합니다? 접수가 이게 뭐야";
break;
default:
message = "디폴트...";
break;
}
System.out.println(message);
}
}
// ------------------------
// (결과)
// 최고입니다 !
이 구문을 Switch Expression문법을 이용하여 바꾸면 다음과 같다.
public class SwitchExpressionExample {
public static void main(String[] args) {
String grade = "B";
String message = switch (grade) {
case "A", "B" -> "최고입니다 !";
case "C" -> "C등급입니다. 공부 더 하세요!";
case "D", "F" -> "장난합니다? 접수가 이게 뭐야";
default -> "디폴트...";
};
System.out.println(message);
}
}
Switch Expression 문법에서는
1. -> 사용 가능 → break; 키워드 누락으로 인한 오류 방지가능!
2. ",(콤마)"를 사용하여 두 개 이상의 경우를 동일한 구문으로 처리가능!
그리고, return문도 작성되어 있지 않은데, 이것은 -> 다음이 return 값으로, return 문이 내장되어 있다고 보면 된다.
뭐 이정도이다....
오늘은 여기까지😑
'Java' 카테고리의 다른 글
| 자바 - 모든 경로에 return 있어야함(2)(System.exit(); 이후에도 return 해줘야한다!! ) (0) | 2025.10.01 |
|---|---|
| 자바 - 가능한 모든 경로에는 return 문을 작성해줘야함!!!!!! (Missing return statement) (1) | 2025.09.25 |
| 자바 - 바인딩(Binding)에 대해서 알아보기......... ( 정적 바인딩(Static Binding)과 동적 바인딩(Dynamic Binding) ) (0) | 2025.09.13 |
| 자바 - 정적 초기화 블록, 인스턴스 초기화 블록 (1) | 2025.09.11 |
| 자바 - super 키워드 (0) | 2025.09.10 |