Notice
Recent Posts
Recent Comments
Link
반응형
변명은 만개 결과는 한개
[Kotlin] null (2) : null 예외처리 본문
728x90
반응형
null 예외처리
Elvis Operator
Elvis Operator
-> ?:
java 의 삼항연산자에서 ?
와 :
를 따로 쓰는것과 비교해서, 붙어있음
var temp: String? null
// 1. if / else 사용 가능
// 2. safe call 사용 가능
// 3. Elvis Operator
val size = temp?.length ?: 0
// output : 0 | length
Elvis Operator 유용하게 사용하기
// JAVA
String temp = null;
textView.setText(temp != null ? temp : "");
// KOTLIN
val temp: String? = null
// textView.text = if (temp != null) temp else ""
textView.text = temp ?: ""
NPE(Null Pointer Exception)
NPE 발생시키는 방법
!! Operator
사용
null인 경우 자동으로 NPE을 발생시킨다
val temp: String? = null
val size = temp!!.length // npe 발생
try/catch
가 필요한 경우 사용하면 됨.
val size = try {
temp!!.length
} catch (e: NullPointerException) {
0
}
Elvis Operator
사용
val temp: String? null
val size = temp?.length ?: throw NullPointerException("temp is null")
이러니저러니해도, Java 와 Kotlin 을 같이 쓸때는 주의해야함
728x90
반응형
'공부 > Kotlin' 카테고리의 다른 글
[Kotlin] 클래스 상속 ( Class Inheritance ) (0) | 2020.11.19 |
---|---|
[Kotlin] null (3) : 유용한 null 처리방법 (0) | 2020.11.18 |
[Kotlin] null (1) : null 처리방법 (0) | 2020.11.16 |
[Kotlin] Return, Jumps, This Expression (0) | 2020.11.15 |
[Kotlin] Lambdas (0) | 2020.11.14 |