코틀린 3강으로 끝내기 feat. 안드로이드 개발 - 인프런 | 학습 페이지
지식을 나누면 반드시 나에게 돌아옵니다. 인프런을 통해 나의 지식에 가치를 부여하세요....
www.inflearn.com
인프런에서 무료 코틀린 강의가 있길래 봤다.
var val, if, for 등 파이썬에도 있던 문법들은 이해가 잘 되는데 NullpointerException, Nullable, Nonnull은 생소해서 정리를 좀 해야겠다. 찾아보니 NPE는 다양한 파생에러를 발생시키고 에러 발생이후 디버깅이 어렵기 때문에 처음 개발할때 예방해서 하는게 중요하다.
https://goddaehee.tistory.com/126
[Java] NullPointException 원인, 예방, 해결하기
[Java] NullPointException 원인, 예방, 해결하기 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ NullPointException 원인, 예방, 해결하기 ] 입니다. : ) 이번 회사 업무를 진행 하는 도중 별도의 과제를 받은..
goddaehee.tistory.com
fun nullCheck() {
var name = "joyce"
var nullName : String? = null // ?를 붙여서 Nullable 변수를 만듦
var nameInUpperCase = : String = name.toUpperCase()
var nullNameInUpperCase = : String? = nullName?.toUpperCase() // ?를 붙여서 null이 아닐경우 대문자값으로 변하고 null일 경우 null을 반환
// ?: 엘비스 연산자
val lastName : String? = null
val fullName : String = name + " " + (lastName?: "No lastName") // null일 경우 ?:뒤에 나온 값으로 반환
}
fun ingnoreNull(str : String?) {
val notNull : String = str!! // !!은 이건 무조건 null이 아니다 라는 뜻 - 사용 지양
val upper : String = notNull.toUpperCase() // 위에서 무조건 null이 아니라고 했기 떄문에 notNull에 ? 안붙임
val email : String? = "aa@na.com"
email?.let{
println("my email is ${email}") // email이 null이 아니면 email을 람다식 내부로 옮겨서 쓸수 있음
}