웹 개발

[java] equals와 "=="의 차이

노루아부지 2019. 8. 15. 11:19

equals 메소드는 객체가 가지고 있는 내용이 같은가를 비교하기 위한 메소드이고, ==는 기본 데이터 타입의 변수일 때는 두 변수의 값이 같은가를 비교하며, 레퍼런스 타입의 변수일 때는 두 객체가 같은 객체인가를 비교하는 비교 연산자이다.

 

ex) 여기서 s, s1, s2는 모두 레퍼런스 타입의 변수이다.

 

String s = "연습";

String s1 = "연습";

String s2 = new String( "연습");

 

if(s == s1) //true

if(s.equals(s1)) // true

if(s==s2) // false

 

 

String은 문자열 클래스 객체이기 때문에 ==을 사용하면 값을 비교하는게 아니라 같은 객체인가를 비교한다.

728x90

'웹 개발' 카테고리의 다른 글

[eclipse] 경로 지정 문제  (0) 2019.08.15
[jsp] Custom tag의 attribute 지시자  (0) 2019.08.15
JSP 내장객체  (0) 2019.08.15
[java] map to class 할 때 Date 형식 오류  (0) 2019.08.13
SOAP error message  (0) 2019.08.12
loading