티스토리 뷰
728x90
반응형
기존의 switch
public class Example {
public static void main(String[] args) {
Example example = new Example();
example.switchExample(Day.TUE); // TUE Day
example.switchExample(Day.SUN); // SUN Day
}
void switchExample(Day day) {
switch (day) {
case MON:
System.out.println(Day.MON + " Day");
break;
case TUE:
System.out.println(Day.TUE + " Day");
break;
case SUN:
System.out.println(Day.SUN + " Day");
break;
}
}
enum Day {
MON, TUE, WED, THUR, FRI, SAT, SUN
}
}
Java 13. switch 연산자
- 화살표 연산자
- : 대신 -> 를 사용할 수 있습니다.
public class MyClass {
public static void main(String[] args) {
MyClass myclass = new MyClass();
myclass.switchExample(Day.TUE); // TUE Day
myclass.switchExample(Day.SUN); // SUN Day
}
void switchExample(Day day) {
switch (day) {
case MON, TUE -> System.out.println(Day.MON + " Day");
case SUN -> System.out.println(Day.SUN + " Day");
}
}
enum Day {
MON, TUE, WED, THUR, FRI, SAT, SUN
}
}
반환값 받기
public class MyClass {
public static void main(String[] args) {
MyClass myclass = new MyClass();
System.out.println(myclass.switchExample(Day.TUE)); // TUE Day
System.out.println(myclass.switchExample(Day.SUN)); // SUN Day
}
String switchExample(Day day) {
String result = switch (day) {
case MON, TUE, WED, THUR, FRI -> Day.TUE + " Day";
case SAT, SUN -> Day.SUN + " Day";
};
return result;
}
enum Day {
MON, TUE, WED, THUR, FRI, SAT, SUN
}
}
yield 사용
- yield 기능을 사용하여 값을 리턴할 수도 있습니다.
public class MyClass {
public static void main(String[] args) {
int a = 10;
int result = switch (a) {
case 0, 1 -> {
yield 1;
}
case 2 -> {
yield 2;
}
case 3, 4, 5 -> {
yield 3;
}
default -> {
yield -1;
}
};
System.out.println(result);
}
}
728x90
반응형
'JAVA > JAVA기본' 카테고리의 다른 글
JAVA - equals와 ==의 차이 (1) | 2021.12.14 |
---|---|
JAVA - hashCode의 의미 (1) | 2021.12.14 |
JAVA - 연산자란? (0) | 2021.12.13 |
JAVA - 불변객체(Immutable Object)란(feat.final)? (0) | 2021.12.12 |
JAVA - Wrapper Class란? (0) | 2021.12.10 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 공간 기반 아키텍처
- 람다 표현식
- 트랜잭셔널 아웃박스 패턴 스프링 부트 예제
- redis 대기열 구현
- 트랜잭셔널 아웃박스 패턴 스프링부트
- pipe and filter architecture
- pipeline architecture
- redis sorted set
- spring boot excel download paging
- transactional outbox pattern spring boot
- microkernel architecture
- @ControllerAdvice
- spring boot 엑셀 다운로드
- spring boot redis 대기열 구현
- polling publisher spring boot
- space based architecture
- spring boot redisson sorted set
- service based architecture
- transactional outbox pattern
- 서비스 기반 아키텍처
- spring boot redisson destributed lock
- redis sorted set으로 대기열 구현
- java ThreadLocal
- 레이어드 아키텍처란
- java userThread와 DaemonThread
- spring boot redisson 분산락 구현
- JDK Dynamic Proxy와 CGLIB의 차이
- 자바 백엔드 개발자 추천 도서
- spring boot excel download oom
- spring boot poi excel download
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함