Kotiln의 null
Kotlin에서 null 허용 여부 사용 | Android Developers
위의 페이지를 참고하여 kotlin에서의 null을 어떻게 다루는지 알아보자
nullable 표기
kotlin에서 변수에 null을 넣고 싶다면 따로 표기를 해줘야 한다
바로 ? 연산자 기호다
var name: String? = null
이런 식으로 자료형까지 명시해준 뒤 뒤에 ?를 붙여야 한다
nullable 접근
nullable한 변수로 선언했을 경우 그 안의 속성이나 메소드에 접근하려면 특별한 연산자를 사용해야 한다
역시 ? 연산자이다
var name: String? = "nonaninona"
println(name?.length)
이 연산자는 null인지 아닌지 판단을 하고 접근을 하기 때문에 nullPointerException 오류가 발생하지 않는다
판단해보고 null이면 그냥 null을 출력한다
fun main() {
var name: String? = null
println(name?.length)
}
<결과>
null
null인지 아닌지 판단하는 걸 건너뛰고 싶다면 (= 여타 다른 언어처럼 그냥 바로 접근하고 싶다면)
느낌표 두 개를 쓰면 된다 !!
fun main() {
var name: String? = null
println(name!!.length)
}
이러면 이제 오류가 날 것이다
nullable 예외처리
null 예외처리를 하고 싶다면 전에 배운 조건문과 연계하면 된다
그러나 if-else보다 훨씬 간단한 연산자가 있다
바로 elvis 연산자이다 ?:
fun main() {
var name: String? = null
val result = name?.length ?: "null Exception"
println(result)
}
<결과>
null Exception
다음과 같이 null인 경우의 값을 지정해 줄 수 있다
'기타 > 안드로이드' 카테고리의 다른 글
Kotlin의 lambda expression (0) | 2022.10.14 |
---|---|
Kotlin의 class, property delegation (0) | 2022.10.14 |
Kotlin의 조건문 (0) | 2022.10.14 |
UI 구성 실습 - 블로그 명함 UI 작성 (0) | 2022.10.14 |
UI 구성 실습 - textAlign, Arrangement/Alignment, weight (0) | 2022.10.13 |