ฉันสงสัยว่ามีวิธีการตรวจสอบว่าlateinit
ตัวแปรได้รับการเริ่มต้น ตัวอย่างเช่น:
class Foo() {
private lateinit var myFile: File
fun bar(path: String?) {
path?.let { myFile = File(it) }
}
fun bar2() {
myFile.whateverMethod()
// May crash since I don't know whether myFile has been initialized
}
}
allSeries
var ไปseriesDir?.listFiles()?.map { it.name }?.toTypedArray()
ซึ่งไม่ใช่ "สวย" มาก
if (seriesDir != null) {
allSeries = seriesDir.listFiles().map { it.name }.toTypedArray()
}
File?
เป็นโมฆะ(เปลี่ยนประเภทเป็น) และเพียงตรวจสอบว่ามันเป็นโมฆะแทน?