강의 내용 중에 ==
과 .equals
의 차이점에 대한 설명을 해주셨다.
나는 이 강의를 듣기 전까지 어디서 들었는지는 기억이 나지않지만...
==
는 int
형에, .equals
는 String
형에 사용한다고 알고있었다 ㅎ
// == 과 equals
//reference type
String text1 = "sample"; //리터럴 타입으로 생성
String text2 = text1;
String text3 = new String("sample"); //new 연산자를 이용한 방식
String text4 = new String("sample");
System.out.println(text1 == text2); //true
System.out.println(text1.equals(text2)); //true
System.out.println(text3 == text4); //false
System.out.println(text3.equals(text4)); //true
.equals
는 글자 그대로를 비교하는 것이고,
==
은 두개의 객체를 비교하는 것이었다. ㄴㅇㄱ
이제 생각난건데 예전에 ==
을 썼다가 오류가 떠서 .equals
로 바꿨더니 해결돼서 별 생각없이 넘어갔던 적이 있었는데
간단하다 생각하고 넘어갔던 개념인데 이제라도 알았으니 오히려 기억에 더 잘남을거같다.