왜 사용할까?
코드를 작성하다 보면 바로 변수를 선언하기 곤란할 때가 있다. 이때 Null을 기본적으로 선언하기 곤란한 코틀린에서는 이 문제를 해결하기 위해 lateinit과 lazy를 사용한다. lateinit은 변수(var)에 lazy는 상수(val)에서 사용한다.
lateinit var name : String
name = "Messi"
println(name)
lateinit을 사용할 때 var 앞에 lateinit을 붙여준다.
val lazyBear : String by lazy {
println("Bear is coming.")
"Teddy Bear"
}
println("First Bear")
println(lazyBear) // "Bear is coming." 출력
println("Second Bear")
println(lazyBear) // "Teddy Bear"만 리턴
lazy를 사용할 때는 리턴할 자료형을 변수명 : 과 by lazy 사이에 작성한다.
주의!
lateinit과 lazy는 참조자료형에서만 사용이 가능하다. int와 같은 기본 자료형에서는 사용할 수 없다.
(기본자료형과 참조자료형의 차이는 구글에서 검색하면 많이 나오는 주제이다. 이 블로그에서는 코틀린에 더 집중하기 위해 생략하였다.)
02-02 기본 자료형
앞서 살펴본 바 변수라는 컵에 담길수 있을 만큼 작은 데이터 형을 기본 자료형이라고 배웠습니다. 그럼 자바에는 기본 자료형이 어떤 것이 있는지 알아 봅시다. 자바에는 기본 자…
wikidocs.net
자바이지만 기본 자료형에 설명이 잘 되어있으니 위 링크도 참고하면 좋을 것이다.
GitHub - KrillM/Kotlin_Again: init project
init project. Contribute to KrillM/Kotlin_Again development by creating an account on GitHub.
github.com
'코틀린' 카테고리의 다른 글
17. Null (0) | 2025.02.08 |
---|---|
16. 인터페이스 (0) | 2025.02.06 |
15. 클래스 - Object (0) | 2025.02.06 |
14. 추상 클래스, 데이터 클래스 (0) | 2025.02.05 |
13. 클래스 - 상속 (0) | 2025.01.29 |