2017-12-12 15 views
0
迅速

で辞書要素の数を取得します。私はこれをすることができます私が持っている

+8

辞書は順序付けられていません。実際には固定指数はありません。 – vadian

答えて

1

これは、あなたの問題のより洗練された、 "スウィフティー"ソリューションかもしれません。 ForEachはSwift言語に機能的に追加されています。値がtrueののみレコードを持つ新しい辞書を持っている

let dict = ["name1": true, "name2": false, "name3": true] 
dict.forEach { (product, value) in 
    if value == true { dict.index(forKey: key) } 
} 

dictにもfilterすることができます、が、。

let trueDict = dict.filter { return $1 } 
+0

dict.forEachコマンドで常に同じインデックスが得られていますか?これは、辞書が順序付けられていないために問題を引き起こす可能性があります。 – ridvankucuk

+0

私はそれを認識していますが、私の答えはTSが求めていることをすると思います。私はまたループの代わりに 'フィルタ'を提案するので、TSはうまくいくはずです。ただし、**は辞書が順序付けされておらず予期しない結果が生じる可能性がある**という懸念があります。 – jbehrens94