假设我有这个枚举:
enum Item {
case foo(String)
case bar(String)
}
Run Code Online (Sandbox Code Playgroud)
以及它的列表:
let items: [Item] = [.foo("aa"), .bar("bb")]
Run Code Online (Sandbox Code Playgroud)
我想找到它的第一 foo项,这就是我所做的:
items.first { (item) -> Bool in
switch item {
case .foo:
return true
default:
return false
}
}
Run Code Online (Sandbox Code Playgroud)
有没有优雅的方式来写这样的东西:
items.first { case .foo = $0 }
Run Code Online (Sandbox Code Playgroud)
(上面的代码显然不起作用)