[kotlin] 널 타입과 컬렉션의 조합 사용 방법

코틀린은 널 타입(nullability)과 컬렉션을 함께 사용하여 더욱 강력한 언어로 편리하게 코딩할 수 있게 해 줍니다. 이 글에서는 널 타입과 컬렉션을 함께 사용하는 방법을 알아보겠습니다.

널 타입 기본 개념

코틀린은 널이 될 수 있는 타입과 널이 될 수 없는 타입을 엄격히 다루기 때문에 널 포인터 예외를 방지할 수 있습니다. 예를 들어, String 타입은 널이 될 수 없으며, String? 타입은 널이 될 수 있는 타입이 됩니다.

널 타입과 컬렉션

컬렉션에서 널을 다룰 때 주의해야 합니다. 널을 포함할 수 있는 컬렉션은 List, Set, Map 등과 같은 컬렉션들을 널값을 포함하여 선언 할 수 있습니다.

val nullableList: List<String?> = listOf("A", null, "C")

위의 예제에서 nullableList는 널 값을 포함하는 문자열 리스트입니다.

널 가능성을 갖는 요소를 순회하거나 조작하는 경우에는 널 체크를 통해 안전하게 처리해야 합니다.

for (item in nullableList) {
    item?.let { println(it) }
}

위의 코드에서는 item이 널이 아닌 경우에만 println을 실행합니다.

요약

널 타입과 컬렉션을 함께 사용하는 것은 코틀린의 강력한 기능 중 하나입니다. 이를 통해 안전하고 효율적으로 널 값을 다룰 수 있습니다. 널 가능성을 갖는 컬렉션을 다룰 때는 항상 널 체크를 통해 안전하게 처리하는 것이 중요합니다.

이상으로 코틀린에서 널 타입과 컬렉션을 함께 사용하는 방법에 대해 알아보았습니다.

참고 자료: kotlinlang.org, kotlinlang.org