Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- 셀레니움
- URI 원칙
- 쓰레드 풀
- 컬렉션 인터페이스
- 차원증가
- 스프링 부트3
- streamlit
- 자바 로그 레벨
- db
- 프로그래머스
- 스프링 부트
- conda remove
- 오라클
- WinError5
- Selenium
- Java
- 완주하지못한선수
- 머신러닝
- REST API
- 사이킷런 회귀
- openai
- 컬렉션 프레임웍
- 알고리즘
- GIT
- h2 데이타베이스
- oracle
- 사이킷런
- 자바 열거형
- 파이썬
- Python
Archives
- Today
- Total
노트 :
열거형(enum) 본문
1. 열거형: 관련된 상수들을 같이 묶어 놓은 것.
C언어와 달리 값만 아니라 타입까지 체크하므로 타입에 안전한 열거형(typesafe enum)이라 불림.
2. 정의: enum 열거형 이름 { 상수명1, 상수명2, .....};
enum Direction {EAST, WEST, SOUTH, NORTH};
3. 열거형 상수의 비교
1) ==
enum Direction {EAST, WEST, SOUTH, NORTH};
void compareValues() {
dir = Direction.EAST;
if (dir == Direction.EAST) {
System.out.println("동등값");
}
}
2) compareTo()
enum Direction {EAST, WEST, SOUTH, NORTH};
void compareValues() {
dir = Direction.EAST;
if (dir compareTo(Direction.EAST) == 0) {
System.out.println("동등값");
}
}
3) 비교연산자는 사용불가
enum Direction {EAST, WEST, SOUTH, NORTH};
void compareValues() {
dir = Direction.EAST;
if (dir < Direction.WEST) { // 에러발생
System.out.println("?");
}
}
4) 열거형의 조상: java.lang.Enum
* Enum 클래스에 정의된 메서드
메서드 | 설명 |
Class<E> getDeclaringClass() | 열거형의 Class객체를 반환 |
String name() | 열거형 상수의 이름을 문자열로 반환 |
int ordinal() | 열거형 상수가 정의된 순서를 반환(0부터 시작) |
T valueOf(Clas<T> enumType, String name) | 지정된 열거형에서 name과 일치하는 열거형 상수를 반환 |
* 컴파일 시 모든 열거형에 자동으로 제공되는 메서드
메서드 | 설명 |
static E values() | 열거형의 모든 상수를 배열에 담아 반환 |
static E valueOf(String name) | 문자열 상수에 대한 참조를 반환 |
Direction d = Direction.valueOF("EAST");
System.out.println(d); // WEST출력
참고: 자바의 정석(3rd Edition), 남궁 성 저, 도우출판
'JAVA' 카테고리의 다른 글
[spring] 스프링 부트 3.x 버전 데이터베이스 설정(application.yml) (2) | 2024.01.03 |
---|---|
[Servlet] 서블릿 컨테이너 (2) | 2024.01.02 |
자바 로그 레벨(log) (0) | 2023.12.26 |
스트림(Stream) (0) | 2023.12.24 |
컬렉션 프레임웍(Collections Framework) (0) | 2023.12.24 |