簡體   English   中英

如何在Kotlin集合中進行UpdateOrInsert

[英]How do I make UpdateOrInsert in Kotlin collections

我有一個項目列表,其中一個項目副本是由用戶更改的,如何通過ID在我的收藏夾中找到它並進行更新,或者如果找不到,我想添加該項目? 我最好的猜測是,但是它需要丑陋的indexOf(v)

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
}

使用indexOfFirst查找具有給定ID的第一個元素的索引。 如果為-1,則將該項目添加到列表中,否則,請更改找到的索引處的值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM