[kotlin] 비교 연산자

Kotlin은 Java와는 다르게 ===== 두 개의 비교 연산자를 제공합니다.

== 연산자

== 연산자는 두 변수의 을 비교합니다. 즉, 변수가 가리키는 실제 데이터 값이 같은지를 비교하는 것입니다.

예를 들어, 다음 코드를 살펴봅시다.

val a: Int = 5
val b: Int = 5

println(a == b) // true

위의 코드에서 ab는 둘 다 5를 가리키고 있으므로 a == b의 결과는 true가 됩니다.

=== 연산자

=== 연산자는 두 변수가 같은 객체를 가리키는지를 비교합니다. 즉, 두 변수의 참조 주소를 비교하는 것입니다.

예를 들어, 다음 코드를 살펴봅시다.

val x: String = "hello"
val y: String = "hello"

println(x === y) // false

위의 코드에서 xy는 둘 다 “hello”라는 문자열을 가리키고 있지만, 서로 다른 객체를 참조하므로 x === y의 결과는 false가 됩니다.

요약

== 연산자는 값의 비교에, === 연산자는 참조 주소의 비교에 사용됩니다. 주의해야 할 점은 Kotlin에서 == 연산자는 Java의 equals() 메서드와 같은 역할을 하지만, === 연산자는 Java에서의 == 연산자와 유사한 역할을 합니다.

이러한 차이점을 이해하고 적절히 활용하면 Kotlin 프로그래밍 시 발생할 수 있는 오류를 줄일 수 있습니다.

참고문헌: Kotlin 공식 문서