티스토리 뷰

Android/Kotlin

[Kotlin]  lateinit  vs  Delegates.notNull<>()

혀가 길지 않은 개발자 2020. 8. 27. 15:17

lateinit  vs  Delegates.notNull<>()


MainActivity.kt

package com.jwsoft.kotlinproject

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle

class MainActivity : AppCompatActivity() {

    private lateinit var longValue: Long
    private lateinit var intValue: Int
    private lateinit var stringValue: String
    private lateinit var arrLong: ArrayList<Long>
    private lateinit var arrInt: ArrayList<Int>
    private lateinit var arrString: ArrayList<String>

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

    }

}

에러 발생

 

 

 

 

 

MainActivity.kt

package com.jwsoft.kotlinproject

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import kotlin.properties.Delegates

class MainActivity : AppCompatActivity() {

    private var longValue by Delegates.notNull<Long>()
    private var intValue by Delegates.notNull<Int>()
    private lateinit var stringValue: String
    private lateinit var arrLong: ArrayList<Long>
    private lateinit var arrInt: ArrayList<Int>
    private lateinit var arrString: ArrayList<String>

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

    }

}

lateinit 선언 시 원시타입 사용 X

by Delegates.notNull<>() 사용 시 원시타입 사용 O

 

 

 

 

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함