본문으로 바로가기

값 타입의 비교

category Spring/Spring JPA 2024. 3. 29. 16:35

값 타입 : 인스턴스가 달라도 그 안에 값이 같으면 같은 것으로 봐야 함

 

  • 동일성 비교 : 인스턴스의 참조 값을 비교, == 사용
  • 동등성 비교 : 인스턴스의 값을 비교, equals() 사용
  • 값 타입은 a.equals(b)를 사용해서 동등성 비교를 해야 함
  • 값 타입의 equals() 메소드를 적절하게 재정의 (주로 모든 필드 사용)

예시

public static void main(String[] args){
    int a = 10;
    int b = 10;

    System.out.println("a == b: " + (a==b));

    Address address1 = new Address("city", "street", "10000");
    Address address2 = new Address("city", "street", "10000");

    System.out.println("address1 == address2: " + (address1 == address2));
    System.out.println("address1 equals address2: " + (address1.equals(address2)));
}

 

 

실행결과

 

 

 

정리

값 타입의 비교는 항상 equals 를 써야된다!!!!

 

 

 

 

'Spring > Spring JPA' 카테고리의 다른 글

실습 6 - 값 타입 매핑  (0) 2024.03.29
값 타입 컬렉션  (0) 2024.03.29
값 타입과 불변 객체  (0) 2024.03.22
임베디드 타입  (0) 2024.03.22
값 타입  (0) 2024.03.22