我有一個數據類一個字段可以轉換爲非null版本嗎?
data class MyModel(private val _data: MyData? = null)
我想確保我的數據是唯一的訪問,當它不爲空,否則拋出。 我使用下面這是很好的。
fun getData(): MyData {
return checkNotNull(_data) { "data shouldn't be null" }
}
但是,如果我跟着導遊按Override getter for Kotlin data class,下面的人抱怨,所以需要返回MyData?
而不是MyData
val data = _data
get(): MyData {
return checkNotNull(field) { "data shouldn't be null" }
}
難道field
不能轉換到非它返回時的空版本?
對於一個正常的變量,這是可能的。對於字段,請嘗試「字段爲字符串」,這不是幫助。做一個類變量自定義getter測試,你會明白我的意思。 – Elye
@Elye也適用於領域。看看我的更新。 –
嗨@Vince,那不是'field'。這只是從另一個變量投射到它。但這也是一個很好的竅門。 Upvote for you as well :) – Elye