[kotlin] 코틀린에서 함수와 메서드의 널 체크하기

코틀린은 널 안정성을 강조하는 언어로, 널 포인터 예외를 방지하기 위해 다양한 기능을 제공합니다. 함수메서드에서 널을 체크하는 방법에 대해 알아보겠습니다.

1. 널 체크 예제

// 함수에서 널 체크하기
fun checkNotNullExample(str: String?): String {
    return str ?: "Default Value"
}

// 메서드에서 널 체크하기
class Example {
    fun checkNotNull(str: String?): String {
        return str ?: "Default Value"
    }
}

위의 예제에서는 ?: 연산자를 사용하여 간단히 널을 체크하고 기본값을 반환하는 방법을 보여줍니다.

2. 안전 호출 연산자

때로는 메서드 내에서 속성이나 다른 메서드를 호출할 때 널을 체크해야 합니다. 이때 안전 호출 연산자 ?.를 사용할 수 있습니다.

class Example {
    fun printLength(str: String?) {
        println(str?.length)
    }
}

위의 예제에서 ?.를 사용하여 str이 널이 아닌 경우에만 length를 출력합니다.

3. 엘비스 연산자

엘비스 연산자 ?:는 널일 때 대체값을 지정할 수 있는 연산자입니다. 일반적으로 함수나 메서드에서 널을 체크하고 기본값을 지정할 때 유용하게 사용됩니다.

fun getValue(str: String?): String {
    return str ?: "Default Value"
}

위의 예제에서 ?:를 사용하여 str이 널인 경우 “Default Value”를 반환합니다.

요약

코틀린에서 함수와 메서드에서 널을 체크하는 방법을 알아보았습니다. ?: 연산자와 안전 호출 연산자인 ?.을 통해 간결하고 안전하게 널을 처리할 수 있습니다.

참고 문헌: