2016-07-18 6 views
-1

ディクショナリ配列に値とキーを更新すると、配列がシャッフルモードで更新されました。なぜこれが起こったのですか?辞書の配列を値と鍵で正式に更新したいのですが、それを変更することなく別の値をキーとしていますか?スワイフ辞書配列の非公式データ更新

let query = DB.query("SELECT data_en_id, en FROM data_en WHERE en LIKE'\(query_result)%'LIMIT 50") 

    for row in query 
    { 

     key_dict = Int("\(row ["data_en_id"]!)")! 
     value_dict = "\(row ["en"]!)" 

     dictArray.updateValue(value_dict, forKey:key_dict) 


    } 

なぜ辞書の配列に値とキーが順番に格納されていませんでしたか?

+1

辞書の配列や配列の辞書がありますか? **辞書には注文はありません**! – luk2302

+0

辞書の配列...値とキーを順にどのように設定できますか? – Zayar

+0

@ZayYAeHtunあなたのコードを表示してください。 –

答えて

0

ディクショナリの順序は定義されていません。ここスウィフトマニュアルに記載されている:https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/CollectionTypes.html

あなたであれば、絶対にデータ収集が、あなたはそれがあなた利用できるだけ注文したコレクション型であるとして、代わりに配列を使用するようにコードを変更する必要があります注文する必要が。ただし、データを注文する必要があるかどうかを検討する必要があります。各キーの正しい値を設定し、次に指定されたキーの正しい値を取得する方法がある限り、データが順序付けられた方法で格納されないという事実は重要ではありません。