MapleStory Cookie With Halo

☕ JAVA/☕ Variables & Data Type

[JAVA]enum

뉴이 NUEY 2024. 11. 28. 14:34
반응형

 

enum 열거형이름 {상수명1, 상수명2, ...}
: 관련된 상수들을 순서대로 묶어놓은 열거형.

 

 

enum을 사용하면 왼쪽 → 오른쪽처럼 상수들을 묶을 수 있다.

 

💡 원래 변수는 소문자로 시작하지만 enum은 타입처럼 사용하기 때문에 대문자로 시작한다.

 

 


 

각 요소는 객체이다.

 

요소 EAST를 가져오는 다양한 방법

 

출력결과

 

EAST는 단순히 문자열로 되어진 게 아니라 하나의 객체이다.

 


 

특징

 

위의 코드에서 d2의 요소를 WEST로 바꾸었다.

 

  • 요소의 값이 같은 지 확인할 때에는 == 와 equals() 모두 사용할 수 있다.

  • 비교할 때에는 비교 연산자 >, < 등은 사용하지 못한다.

  • 비교는 compareTo() 메서드를 사용해야 한다. (요소가 객체이므로)

❗ d1.compareTo(d3) 결과가 -2인 이유는
enum에서 { }안에 오른쪽에 선언된 요소의 순서가 더 크기 때문이다.
{0, 1, 2, 3, ....} 
❗ enum명은 어느 클래스든 중복되면 error발생. ( static 객체이기 때문에 )

 


 

switch()문에 사용할 경우

 

 


 

메서드

 

 

  • name()
    → 요소의 이름.

  • ordinal()
    → 요소의 순서.

 


 

임의 값 지정

 

 

출력결과

 

  • Direction1.SOUTH
    → enum의 요소는 사실상 생성자이다. 그래서   Direction1.SOUTH.getValue()  와 같이 적을 수 있는 것이다.

  • 클래스 변수는 private final로 작성해야만 한다.


 

예제2

 

 


참조영상

반응형

'☕ JAVA > ☕ Variables & Data Type' 카테고리의 다른 글

[JAVA]Singleton Pattern  (0) 2024.11.26
[JAVA]HashMap<key, value>  (1) 2024.11.26
[JAVA]TreeSet  (1) 2024.11.25
[JAVA]HashSet  (0) 2024.11.23
[JAVA]연산자  (2) 2024.11.22