반응형
Enum은 열거형이라는 뜻을 가지고 있다 Enum이라는 타입을 사용할 시 Enum에서 설정한 데이터만 사용할 수 있다 예를 들면 '요일' "월, 화, 수, 목, 금, 토, 일"이 있다 해당 요일 외에 데이터는 받지 않기 때문에 컴파일 에러로 사전에 버그를 잡아낼 수 있다
Enum에 다양한 메소드가 존재한다
📝name()
enum Week {
MONDAY,
TUESDAY,
WEDNESDAY,
THURSDAY,
FRIDAY,
SATURDAY,
SUNDAY
}
Week week = Week.FRIDAY;
String weekName = week.name();
System.out.println(weekName); // FRIDAY
enum의 값을 String으로 반환해준다
📝예제
import java.util.Arrays;
public enum AreaEnum {
SEOUL("서울",1),
INCHEON("인천",2),
GYEONGGI("경기",31);
private final String name;
private final int code;
AreaEnum(String name, int code) {
this.name = name;
this.code = code;
}
public String getName() {
return this.name;
}
public int getCode() {
return this.code;
}
public static String getByCode(int code) {
Arrays.stream(values())
.filter(area -> area.getCode() == code)
.findFirst()
.map(AreaEnum::getName)
.orElse(null);
}
}
반응형
'[Java] > [Java]' 카테고리의 다른 글
[Java] 테스트 코드(Test Code) 작성 (Junit5) (0) | 2024.11.02 |
---|---|
[Java] 유명 라이브러리 (0) | 2023.12.08 |
[Java 17] [클린코드] Switch-Case 개선 시키기 (0) | 2023.12.08 |
[Java] Method Reference 메소드 레퍼런스[축약] (시그니처) :: (0) | 2023.08.08 |
[Java] Stream 스트림 (range, rangeClosed, iterate, IntStream, of, forEach, filter, map, findAny, collect, toList, joining, toSet, count, distinct) [Lazy Evaluation] (0) | 2023.08.08 |