enum 비교 연산은 equals() 보다 == 이 낫다

2024. 8. 10. 13:49JAVA

== 비교 연산

원시타입일 경우, 값 그 자체를 비교한다.

참조타입일 경우, 인스턴스의 주소값을 비교한다.

 

equals() 를 사용한 비교연산

equals() 는 객체의 동등성을 비교할 때 사용된다.

하지만 이는 비교대상이 되는 객체에 equals()를 오버라이딩하여 가능한 것으로,

최상위 클래스 Object가 갖는 equals()는 결국 == 연산을 수행한다.

public boolean equals(Object obj) {
    return (this == obj);
}

 

enum 비교

enum은 상수로서 단 하나만 존재하는 객체이다.

계속해서 만들어지지 않고, 객체마다 주소값이 다를 일도 없다.

즉. equals()를 오버라이딩 할 필요도, equals() 메서드를 실행할 필요도 없다.

==연산으로 손쉽게 비교가 가능하기 때문이다.

 

따라서, enum 끼리 비교할 때 비교 연산은 == 연산이 효율적이다.

'JAVA' 카테고리의 다른 글

배열  (0) 2024.07.31
Deque  (0) 2024.07.17
Queue  (0) 2024.07.16
Map  (0) 2024.07.16
Set  (0) 2024.07.16