동등성

    Java - 객체 비교에는 Objects.equals()를 사용하자.

    자바에서 객체를 비교할 때는 객체.equals() 보다 Objects.equals 를 사용해서 비교하는것이 NPE(NullPointerException)으로 부터 안전하다. 먼저 객체의 비교에서는 동일성 비교(== 비교)와 동등성 비교(.equals())를 이용해서 비교할 수 있다. 동일성 동일성 (Identity) : 동일하다는 뜻 동등성 동등성 (equality) 다음과 같이 두 객체를 비교하는 경우가 있다고 하자. public void print(Text originText, Text otherText) { if (originText.equals(otherText)) { System.out.println("두 객체가 같다") return; } System.out.println("두 객체가 다르다")..

    Java - 동일성과 동등성 ( ==, equals() )

    동일성과 동등성 (Identity, Equality) 자바에서 객체를 비교할 때는 동일성과 동등성이 무엇인지 알고 비교해야 한다. 동일성(Identity) : 메모리 내 주소값이 같은지 비교한다. 동등성(Equality) : 논리 값, 같은 정보가 동등한지 비교한다. 동일성 동일성 (Identity) : 동일하다는 뜻 동일성은 동일하다는 뜻으로 객체 비교 시 두 객체가 완전히 같은 경우를 의미한다. 비교 대상의 두 객체가 가르키는 메모리 주소가 같은것을 의미한다 Member member1 = new Member("영수"); Member member2 = member1; 자바에서 메모리 주소를 비교하는 연산은 == 연산자로 확인할 수 있다. 변수는 stack영역에 생성되는데, 이 stack영역에 있는 변수..