안녕하세요! 프뚜입니다.
NPE(Null Point Exception) 처리 방법에 대해서 포스팅하려고 합니다.
[개발 환경]
- OS: Windows 10 64bit
- JAVA: 11
null 대입하기
var로 선언된 변수에 null을 대입하려고 하니 컴파일 에러가 발생합니다.
변수 타입 뒤에 ?를 붙여서 null을 허용해주어야 합니다.
null 체크하기
String으로 선언된 변수에 초기값을 지정했으나, null 허용(?)을 했기 때문에 null 체크 없이 변수를 사용할 수 없습니다.
null 체크를 하고 나니 사용할 수 있습니다. 하지만 if로 체크하는 방법 말고 다른 방법이 있습니다.
변수명 뒤에 ?를 붙여서 null이 아닌 경우 length를 구하고 null이면 NPE가 아닌 null을 return하도록 할 수 있습니다.
변수가 null일 때 null return이 아닌, Default Value를 지정할 수 있습니다.
null 허용 변수를 체크 없이 강제로 사용하기
변수명 뒤에 !!를 붙여서 사용한다면 null 체크 없이 사용가능합니다. 하지만 NPE 발생을 안고 가는 것이기 때문에 추천드리지 않습니다.
해당 소스는 GitHub에서 받을 수 있습니다. (commit message와 게시글 제목은 동일합니다.)
https://github.com/JeongSeongSoo/tistory_kopring.git
GitHub - JeongSeongSoo/tistory_kopring: 티스토리 스프링 + 코틀린
티스토리 스프링 + 코틀린. Contribute to JeongSeongSoo/tistory_kopring development by creating an account on GitHub.
github.com
'프로그램 > KOTLIN' 카테고리의 다른 글
[Kotlin] 코틀린의 연산자 오버로딩 (Operator Overloading) (2) | 2022.12.15 |
---|---|
[Kotlin] 코틀린의 Scope Function (let, run, with, also, apply) (2) | 2022.12.14 |
[Kotlin] 코틀린의 함수 (fun) (1) | 2022.12.10 |
[Kotlin] 코틀린의 반복문, 조건문, 선택문 (2) | 2022.12.09 |
[Kotlin] 코틀린의 변수와 타입 (2) | 2022.12.08 |