检查集合的元素

时间:2019-04-30 09:49:29

标签: android kotlin collections

我想检查我的收藏集是否已经有一个具有相同名称的项目(connection.name),如果存在,则调用一个将执行某些操作的方法,例如,更改字段:{{1} }

目前,我得到的收藏如下:

connection.name

1 个答案:

答案 0 :(得分:3)

  

我要检查我的收藏夹是否已经有一个具有相同名称(connection.name)的项目

您可以使用find()(以获取结果)或any()(以查看条件是否对至少一个元素成立)来进行此操作:

val found: ConnectionViewModel? = list.find { it.name == expectedName }

val nameExists: Boolean = list.any { it.name == expectedName }

  

,如果存在,则调用将执行某些操作的方法,例如,更改字段:connection.name

鉴于上面的foundnameExists的结果,这应该很简单。

list.map {
    if (nameExists)
        it.copy(name = differentName)
    else
        it
}