kotlin equality(== , ===)

h_hi·2021년 2월 26일
0

kotlin

목록 보기
4/10

kotlin 의 equality

  • structural equality (==)
  • referential equality (===)

값의 비교 ==

a?.equals(b) ?: (b === null)

내부적으로 equals 를 사용합니다. java 의 equals 와 같이 값을 비교합니다.

reference 주소의 비교 ===

같은 객체를 가리키고 있는지 주소를 비교합니다.

java 의 equality

  • 메모리에 담긴 값의 비교 (==)
  • 값의 비교 (equals)

==

primitive type 으로 선언된 변수는 == 를 통해 값을 비교하고, reference type 으로 선언된 변수는 == 를 통해 주소를 비교합니다. 주소가 같으면 값 또한 같으므로 어떤 타입이든 == 로는 같은 값인지를 알 수 있습니다.

equals

reference type 의 객체 값이 동일한지 파악하기 위해선 equals 를 사용해야 합니다.


REFERENCE

Kotlin 공식문서

profile
안드로이드, flutter 개발자

0개의 댓글