如何在Swift中搜索包含struct元素的Array?

时间:2014-09-04 12:08:58

标签: ios arrays swift ios8

在类型为String,Int等的数组中找到一个元素非常简单。

var States = ["CA", "FL", "MI"]
var filteredStates = States.filter {$0 == "FL"} // returns false, true, false

现在,我创建了一个结构

struct Candy{
    let name:String
}

然后初始化它

var candies =  [Candy(name: "Chocolate"),
Candy(name: "Lollipop"),
Candy(name: "Caramel")]

任何人都可以建议在包含struct元素的数组中找到“Chocolate”的正确方法吗?我无法实现查找或过滤方法。

1 个答案:

答案 0 :(得分:30)

使用以下代码,您将收到数组中与"Chocolate"匹配的所有糖果结构。

var candiesFiltered = candies.filter{$0.name == "Chocolate"}

如果你只是想要一个布尔值,你可以使用以下代码:

var found = candies.filter{$0.name == "Chocolate"}.count > 0