[kotlin] 널 안전성을 고려한 변수 할당 방법

Kotlin은 안전한 널 처리를 위해 설계된 언어로, 안전하지 않은 널 포인터 예외를 방지하는 데 유용합니다. 변수를 선언하고 초기화하는 방법은 널 안전성을 고려하여 두 가지 방법으로 나뉩니다.

1. Nullable 변수(null 허용 변수)

Nullable 변수는 널 값을 가질 수 있는 변수입니다. 이러한 변수를 선언할 때에는 변수의 타입 뒤에 ?를 붙여 표시합니다.

var nullableString: String? = "Hello, Kotlin!"
nullableString = null // null 값으로 할당 가능

위의 예제에서 nullableString 변수는 String 타입의 값을 가질 수 있지만 널 값도 허용됩니다.

2. Non-nullable 변수(null 비허용 변수)

Non-nullable 변수는 절대로 널 값을 가질 수 없는 변수입니다. 변수를 선언할 때에는 변수의 타입 뒤에 ?를 붙이지 않습니다.

val nonNullableString: String = "Hello, Kotlin!"
// nonNullableString = null // 컴파일 에러: null 값을 할당할 수 없음

위의 예제에서 nonNullableString 변수는 String 타입의 값을 가질 수 있지만 널 값은 허용되지 않습니다.

요약

Kotlin에서는 변수를 선언하고 초기화할 때, 널 안전성을 고려하여 Nullable 변수와 Non-nullable 변수를 사용할 수 있습니다. 이러한 기능을 통해 안전성을 높이고 널 포인터 예외를 방지할 수 있습니다.

널 안전성에 관련된 추가 정보는 Kotlin 공식 문서에서 확인할 수 있습니다.