我正在编写一个收藏夹类,将添加,删除,保存和加载曲目从宋模型。我需要另一个函数,将检查曲目是否添加到我们的数组或没有,但我不能使它工作。我有一个工作的例子,但它只检查一个参数。
func containsTracks(_ track: Soung) -> Bool {
tracks.contains(track.name ?? "aboba")
}
我一直试图为宋创建同样的东西,但失败了:
func containsTrack(_ song: Soung) -> Bool {
tracks?.contains(where: <#T##(Soung) throws -> Bool#>) // DON'T KNOW WHAT IS THIS
}
所以我在这里寻求你的帮助。这个函数必须返回true或false才能创建这样的If语句
一个二个一个一个
2条答案
按热度按时间np8igboo1#
在这个密码里...
看起来像
<#T##(Soung) throws -> Bool#>
的位是一个Xcode占位符。它看起来像是你编辑过的,而不是仅仅点击[Enter]把值放在那里。这是一个闭包(函数)的占位符,它接受一个
Soung
并返回一个Bool
。所以在你的代码里应该是...
或者更好的是
Soung
符合Equatable
...或者只是...
你甚至根本不需要这个函数。
3vpjnl9f2#
contains(where:
将闭包作为参数,当找到匹配时返回true
,例如