2016-09-08 9 views
-1

型が配列の要素のインデックスを取得する方法は?get indexOf要素の型が配列の場合

私は videosArrays Xcodeで videosのインデックスを取得する必要があり
var thumbnailImageURL: String? 
var title: String? 
var numberOfViews: NSNumber? 
var uploadDate: NSData? 

はこれを与える:例えば

、私は、プロパティ let videosArrays = [[Video]]() と、この配列let videos = [Video]()

ビデオのいくつかの要素があるいくつかのプロパティを持っています構文:

<predicate: (Self.Generator.Element) throws -> Bool(Self.Generator.Element) throws -> Bool> 

これはどのように実装できますか?

let index = videosArrays.indexOf({ (<#Self.Generator.Element#>) -> Bool in 
      <#code#> 
     }) 

インデックスの検索方法を理解できません。

+0

をあなたが欲しいのインデックスオブジェクトを指定することができますか? –

+0

どの動画のインデックス? – ozgur

+0

'videosArrays'の要素であるindexOf' videos'が必要です – Ilya

答えて

1

indexOf,などの配列メソッドを簡単に使用できるようにするには、オブジェクトは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 
} 
+0

thanx!しかし配列についてはどうですか?私は配列を持つ要素からなる配列を持っていますか?配列の配列のインデックスを見つける必要があります – Ilya

+0

次に、引数としてクロージャ 'indexOf'を取る必要があります: ' videosArray.indexOf {$ 0 == [Video(...)]} 'あなたが望む配列に配列の配列をコピーします。 – S2dent

+0

私はこの閉鎖を実装する方法を理解できません( – Ilya

関連する問題