我正在嘗試將 arrayList 的元素添加到模型類 arrayList 中。但最后,模型類的所有元素都成為最后添加的元素。我錯過了什么?謝謝
這是模型類
class ChaplainAvailableTimesModelClass(
var time: String? = null,
val isBooked: Boolean = false,
val patientUid: String? = null
) {
}
我在這里定義了陣列串列
private var chaplainAvailableTimes = ArrayList<ChaplainAvailableTimesModelClass>()
private var temporaryTimes= ArrayList<String>()
這是添加部分
val chaplainAvailableTimesModelClass = ChaplainAvailableTimesModelClass()
dbSaveAvailableTimes = db.collection(chaplainCollectionName).document(chaplainUserId)
for (k in 0 until temporaryTimes.size){
chaplainAvailableTimesModelClass.time = temporaryTimes[k]
chaplainAvailableTimes.add(chaplainAvailableTimesModelClass)
}
uj5u.com熱心網友回復:
您的代碼中的問題是:
val chaplainAvailableTimesModelClass = ChaplainAvailableTimesModelClass() /// <-----
dbSaveAvailableTimes = db.collection(chaplainCollectionName).document(chaplainUserId)
for (k in 0 until temporaryTimes.size){
chaplainAvailableTimesModelClass.time = temporaryTimes[k]
chaplainAvailableTimes.add(chaplainAvailableTimesModelClass)
}
您在 for 回圈之前實體化 chaplainAvailableTimesModelClass 一次,并在將其添加到陣列串列時使用相同的實體。您需要根據所需的數量 (temproraryTimes.size) 創建 chaplainAvailableTimesModelClass 的不同實體。
因此,根據您想要做什么,將 chaplainAvailableTimesModelClass 的實體化移動到 for 回圈內可能是值得的。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/361485.html
下一篇:未解決的參考:索引
