java 배우기/TIL

동등성(Equality)과 동일성(Identity)

checkuu 2024. 8. 3. 18:54

동등성(Equality)

동등성은 논리 비교 

ex) 다른 가게에서 각각 산 커피는 같은 커피인가?

ex) 다른 가게에서 각각 산 커피는 같은 커피인가?
커피라는 본질자체는 같다 같은 커피이다.

논리 비교로 .equals() 메서드로 구현한다

 

동일성(Identity) 

동일성은 물리비교

ex)같은 장소에서 산 커피가 같은 커피라고 할 수 있다.

물리비교로 == 연산자 사용하며 메모리 주소값으로 판단

mapA = ("forest",10);
mapB = ("forest",10);

System.out.println(mapA.equals(mapB)); //false 저장되어있는 메모리가 다르다
System.out.println(mapA == mapB); // true 둘다 같은 forest , 10을 가지고있다