Develop/Android + Kotlin

[Android] 안드로이드 Kotiln의 NullSafety

마크투비 2021. 8. 25. 01:47

1. NullSafety란?

👉 Null에 대해 안전함을 보장해주는 코틀린의 특징이다.

 

✔️ Null vs 0

- 0: 휴지를 다 쓰고 휴지심만 남은 상태

- Null: 휴지심도 없는 상태, 존재하지 않는 상태, 모르는 상태

 

✔️ Null이 안전하지 않은 이유

null인 값으로 연산을 하거나, null에 리스너 객체로 접근하려고 할 경우 에러(NullPointExceptionError)가 발생할 수 있기 때문이다. 

 

2. 코틀린이 NullSafety 하기 위해 사용되는 문법

1) ?

- 사용하려고 하는 변수나 객체가 null인지 아닌지 체크해주는 문법

- null이 아니라면 이하 구문 실행

// ? 앞에 있는 변수가 null이 아니라면 setOnClickListener를 실행하겠다.
button?.setOnClickListener{

}

2) !!

- 사용하려고 하는 변수나 객체가 확실히 null이 아님을 보장해주는 문법

// button은 확실히 Null이 아니다.
button!!.setOnClickListener{

}