이세개발
article thumbnail

기본 타입 변수의 ==, != 연산은 변수의 값이 같은지, 아닌지를 조사하지만 참조 타입 변수들 간의 == , != 연산은 동일한 객체를 참조하는지, 다른 객체를 참조하는지 알아볼 때 사용된다. 참조 타입 변수의 값은 힙 영역의 객체 주소이므로 결국 주소 값을 비교하는 것이 된다. 동일한 주소 값을 갖고 있다는 것은 동일한 객체를 참조한다는 의미이다. 따라서 동일한 객체를 참조하고 있을 경우 == 연산의 결과는 ture이고 != 연산의 결과는 false이다.

 

상기 그림에서 refVar1과 refVar2는 서로 다른 객체를 참조하고 있으므로 == 및 != 연산의 결과는 다음과 같다.

 

refVar2와 refVar3는 동일한 객체2를 참조하고 있으므로 == 및 != 연산의 결과는 다음과 같다.

==와 != 연산자로 객체를 비교하는 코드는 일반적으로 if 문에서 많이 사용된다. 다음은 변수 refVar2 와 refVar3 이 같은 객체를 참조할 경우 if 블록을 실행하도록 코딩한 것이다.

 

profile

이세개발

@print(name)

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!