我需要根据某些项目的类型(20种情况中的“ typeA”,“ typeB”,“ typeC”,“ typeD”)提取项目列表。我如何以优雅的方式做到这一点。无需创建不需要的Invalid
类型。
在Java上,我将创建一个空列表并有一个foreach
,跳过不必要的情况。我不知道如何在kotlin上执行此操作,因为map()
需要返回某些内容,并且创建Invalid
类型对此不可行。拥有Java解决方案听起来并不正确。
*已编辑
我将举一个例子: 我们有一个甜点列表,我们正在过滤“冰淇淋”和“蛋糕”类型,我只是在下面创建了代码:
private fun getDessertsByType(dessertsFromBackend: List<Dessert>) {
val myList = mutableListOf<Dessert>()
for (item in dessertsFromBackend) {
if (item.getId() === "ice-cream") {
myList.add(item)
}
if (item.getId() === "cake") {
myList.add(item)
} else { //We do not need to care for anything else
continue
}
}
}
答案 0 :(得分:2)
我还没有尝试过,但是请尝试这样做。
dessertsFromBackend.filter { it.id == "ice-cream" || it.id == "cake" }
答案 1 :(得分:1)