본문 바로가기

dev/자바

hashCode equals

자바에서 hashCode는 객체를 식별하는 정수로

 

두 객체의 hashCode 값이 같으면 동일한 객체로 판단됩니다.

 

예제 클래스

 

예제 코드

 

위의 TmpObj 클래스를 보게 되면

 

num이라는 필드를 통해서 hashCode와 equal 메소드를 재정의한 것을 확인할 수 있습니다.

 

그리고 TmpObj 클래스의 객체 obj1과 obj2를 비교한 것을 보게 되면

 

두 객체의 주소값이 다르더라도 동일한 객체로 판단하는 것을 확인할 수 있습니다.

 

또한 num 필드만 같으면 str 필드는 관계없이 동일한 객체로 판단되는 것도 확인할 수 있습니다.

 

예제 코드

 

조금 더 정확하게 판단하고 싶다면

 

Set을 사용해서 확인하는 방법도 있습니다.

 

객체 비교하는 코드 작성할 때 사용하면 유용할 것 같습니다.

 

'dev > 자바' 카테고리의 다른 글

Array List min max  (0) 2023.05.12
Java 파일 경로 조회  (0) 2023.05.10
Java Reflection  (0) 2023.02.15
Custom Exception  (0) 2022.12.13
Java 시간 계산  (0) 2022.11.28