equals() 와 ==
해당 포스트의 작성 목적 equals()의 메소드와 == 으로 비교시에 대한 명확한 차이점을 알고, 왜 그렇게 써야하는지에 대해 알아본다. == ==은 동등비교연산자로, 기본 자료형 변수들에 한해서, 변수의 값을 비교하고, 같으면 true, 다르면 false를 출력한다. 그렇기 때문에, 참조형 객체의 값을 비교할때는 == 을 쓰는것에 유의해야 한다. 단, String의 경우 리터럴 생성시와 new연산자 생성시에 따라 사용 가능할때가 있다. new연산자로 생성시 값이 같아도, 객체의 주소값은 다른 또다른 객체가 힙메모리에 생기기 때문에, 동등비교연산자로 비교해도 값은 무조건 다르다고 나온다. 그러나 리터럴 생성시, 힙메모리의 StringPool이라는 공간에 객체가 생성되고, 이후 StringPool에 있는..