初始化類變量答:在初始化塊什麼是正確的位置在科特林
private class ViewHolder(view: View) {
val menuImg: ImageView
val txtMenu: TextView
init {
menuImg = view.find(R.id.menuImg)
txtMenu = view.find(R.id.txtMenu)
}
}
乙初始化類變量:初始化類變量直接在類塊
private class ViewHolder(view: View) {
val menuImg: ImageView = view.find(R.id.menuImg)
val txtMenu: TextView = view.find(R.id.txtMenu)
}
哪兩個代碼之間的不同爲什麼?
它們之間沒有什麼不同。 'init'塊是初始化屬性需要多個語句的一種便捷方式。而你的代碼沒有任何無法編譯的轉換表達式。 –
注意在第二個代碼片段中重複'= menuImg',否則我更喜歡那個版本;申報和分配在一個地方。 (編輯:哇你修好了那個快!!) – AjahnCharles
holi-java謝謝你的解釋; –