我怎样才能弄清楚哪个类型为数组的元素的索引?
例如,我有财产
let videosArrays = [[Video]]()
以及此数组的一些元素let videos = [Video]()
视频有一些属性:
var thumbnailImageURL: String?
var title: String?
var numberOfViews: NSNumber?
var uploadDate: NSData?
我需要在videos
中获得videosArrays
的索引
Xcode提供了这种语法:
<predicate: (Self.Generator.Element) throws -> Bool(Self.Generator.Element) throws -> Bool>
我如何实现这个?
let index = videosArrays.indexOf({ (<#Self.Generator.Element#>) -> Bool in
<#code#>
})
我无法弄清楚如何使用它来查找索引。
答案 0 :(得分:1)
为了能够轻松使用contains
,Equatable
和其他一些数组方法,对象必须符合extension Video: Equatable { }
func ==(lhs: Video, rhs: Video) -> Bool {
return lhs.thumbnailImageURL == rhs.thumbnailImageURL &&
lhs.title == rhs.title &&
lhs.numberOfViews == rhs.numberOfViews &&
lhs.uploadDate == rhs.uploadDate
}
协议。
因此,您应该执行以下操作:
{{1}}