IT이야기/IT Level-up

[DURGA 코딩인터뷰 대비] ==, equals() 차이

FelixShin 2016. 3. 6. 18:56
반응형

DURGASOFT는 인도 No1. SW Training Center라고 하는 곳이다.

DURGA의 첫번 째 강의를 듣고 아래와 같이 정리 하였다.





1. 주제

== operator, equals method 차이


2. 요약

== : 객체의 참조(reference) 비교시 사용, 비교하는 두 값의 reference의 위치(주소)가 같아야 true가 나옴 

equals() : 내용(contents) 비교시 사용  


# String 클래스에서 모든 랩퍼클래스와 모든 콜랙션 클래스의 .equals() 메소드는 컨텐츠 비교를 오버라이드한다.





3. 예시


String a1 = new String("felix");

String a2 = new String("felix");


Boolean result1 = (a1==a2)

-> result1은 false 

    이유: a1,a2 내용값은 같아도 a1,a2 객체의 참조값은 다르기 때문


Boolean result2 = (a1.equls(a2))

-> result2는 true

    이유 : a1,a2의 주소는 다르나 객체 안 내용값이 같으므로