Kotlin 기초 #4 Null Safety, 지연 함수
                                            
                                                
                                                
                                                
                                                
                                                
                                                 7595 단어  Kotlin기초강의Kotlin기초강의
                    
빠르게 진도 나가는 Kotlin 기초강의 3번째 시간입니다~
💕 1. Nullable
자바에서는 널을 넣어도 상관없었다.
String pongPong = "퐁퐁"
pongPong = null그만큼 위험하기도 했는데 null이 잘들어가는 만큼 Null Pointer Exepction이 자주났다.🤣🤣
다음껄 확인해보자
    var myName:String = "퐁퐁"
    myName = null //에러똑같은 구문이지만 에러가 난다. Kotlin에선 Null을 받으려면 ?를 써야한다.
	//nullable이다.
    var myName:String? = "퐁퐁"
    myName = null //에러🚲 2. Safe Call
이제 SafeCall을 알아보자.
SafeCall은 Null이 아닐때만 액션을 취할수있게 해준다.
val str:String? = null
val upper = str?.toUpperCase()
var number:Int? = null 
var result = number?.plus(37)Null값을 가지고 있기때문에 toUpperCase() , plus가 동작하지 않는다.
🐱🏍 3. Elvis Expression
?가 Elvis머리와 같다고 탄생한 Elvis Expression이다.
val str:String? = null
//Elvis Expression
val upper = str?.toUpperCase() ?: "초기화 하세요!"
var result = number?.plus(37)  ?: 51만약 Null이 들어올경우 , ?: 뒤가 값이되어 NullPointer를 못하게 막는다.
🐱💻 4. lateinit
        //지연초기화
        // lateinit var 변수명:타입
        //변수가 아닌 클래스에 많이 쓰인다.
       lateinit  var Person:String // 참조형에만 사용이 가능하다.
       lateinit var myName:String? //에러. Null값이 허용되지않는다.
       /
       
        lateinit var person : Person // 초기화를 지연시켰다.
        person = Person()     //이제 초기화 시켰다. 메모리에 올라감.
        person.address = "취킨"
       
    class Person{
        var name = ""
        var age = ""
        var address =""
        var tel = ""
    }
🚗 5. lazy
        //값이 바뀌지않는 초기화: 읽기전용
       val age by lazy{Person}
       
       
        val hong : Int by lazy {
        println("아프리카 태생 국민이")
        100
    }
    
    fun main() {
    val account = Account()
    println(account.balance)
    println(account.balance)
}
//ㅣlazy 의 {}은 변수가 처음 사용될때 한번 호출되며, 마지막값이 초기값으로 할당
//아프리카 태생 국민이
//100
//100
Author And Source
이 문제에 관하여(Kotlin 기초 #4 Null Safety, 지연 함수), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@vov3616/Kotlin-기초-3-Null-Safety저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)