アイテムのリストがあり、アイテムのコピーの1つがユーザーによって変更されています。IDと更新によってコレクション内で見つけたり、見つからない場合はどうすればいいですか?アイテムを追加するには?私の最高の推測ではあるが、それは与えられたIDを持つ最初の要素のインデックスを見つけるために、醜いのindexOf(V)KotlinコレクションでUpdateOrInsertを作成する方法
fun updateOrInsert(note : UserNote) {
val list = notes.value!!
val v = list.firstOrNull{(Id) -> Id ==note.Id}
if (v==null) {
list.add(note)
} else {
val i = list.indexOf(v)
list[i] = note
}
notes.value = list
}
最後の行 'notes.value = list'は必要ありません。 – Boris
それはアンドロイドのLiveDataの魔法ですので、フードの下でイベントを送信します –
ああ、大丈夫です。まだLiveDataで何もしていないが、あなたが言っていることを得る。 :) – Boris