2016-08-13 6 views
0

のは、私は私がこの辞書のキーの配列たい場合、私は元の順序で配列内の辞書のキーを取得します

let dict = [ 
    "Joe":"D.", 
    "Ben":"K.", 
    "Kyle":"R.", 
    "Matt":"L." 
] 

辞書を持っているとしましょう:

let keys = Array(dict.keys) 

しかし、このプリントでは一見無作為な順序:

["Ben", "Joe", "Matt", "Kyle"] 

原点辞書と同じ順序のキーの配列を取得する方法はありますか?

すなわち

["Joe", "Ben", "Kyle", "Matt"] 
+9

辞書には順序がありません。 – rmaddy

答えて

2

辞書には順序がありません。新しい要素を辞書に追加すると、今度は順序はありません。 タプルの配列

 let array = [("Joe", "D."), ("Ben", "K."), ("Kyle", "R.")] 
     print(array) 
//  [("Joe", "D."), ("Ben", "K."), ("Kyle", "R.")] 
     let keys = array.map { $0.0 } 
     print(keys) 
//  ["Joe", "Ben", "Kyle"] 
+1

Irfanは正しい辞書であり、その注文を保持することを意味するものではなく、Key-Valueエンコーディングのプリンシパルで働いています。配列を使用する必要があります。 – Priyansh

関連する問題