0

这是更改可变列表中的值以防万一的代码:

vids?.find { it.id == 2 }?.iLike = true

但是如何设置条件以防找不到呢?我知道如何在 for 循环中执行此操作,所以不要回答:D

4

1 回答 1

3

您必须验证是否找到然后返回

vids?.find { it.id == 2 }?.let {
    it.iLike = true
} ?: run {
    //do something
}

只是澄清一下,您不会更改元素的值,因为列表是可变的,而是因为集合类型的属性是可变的。该属性iLike是可变的,这就是您可以更改它的原因,而不是因为可变列表。

于 2020-11-12T18:02:50.830 回答