Kotlin

[Kotlin] is 연산자

정창수 2020. 9. 1. 10:03

is 연산자란 java에서 InstanceOf의 키워드와 동일한 역할을 한다.

다시 말하자면, 참조 변수가 실제로 가리키고 있는 객체의 타입을 알아낼 수 있는 역할을 한다.

이에 대한 예제는 다음과 같다.

open class Person(val name: String, val age: Int)

class Student(name: String, age: Int, val id: Int) : Person(name, age)

class Professor(name: String, age: Int) : Person(name, age)

fun main(args: Array<String>)
{
	val person: Person = Student("Mark Zuckerberg", 33, 20171225)
	println(person is Person)
	println(person is Student)
	println(person is Professor)

	val person2: Person = Professor("Kim", 48)
	println(person2 is Person)
	println(person2 is Student)
	println(person2 !is Professor)
}

위의 예제 코드를 확인할 수 있듯이 객체 타입을 비교 하고 있으며, 이에 대한 결과는 다음과 같다.

println(person is Person)  : true

println(person is Student) : true
println(person is Professor) : false

println(person2 is Person) : true
println(person2 is Student) : false
println(person2 !is Professor) : false

 

참고 : 초보자를 위한 Kotlin 200제 라는 책을 기반으로 공부 내용을 정리하였습니다.