FC2ブログ
    04 «1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.» 06

    ハルシオンシステムの気ままBlog

    株式会社ハルシオンシステムのメンバーが送る、UnityやらJavaやらの技術的話題から、自社開発のアプリの宣伝とかとかのブログです。ほんと気ままにいきたいと思います。更新日は毎週 月 木でっす!

     

    【ハルシオンブログ】Dictionaryをforeachで更新する 

    こんにちは。
    大坂です。

    ポケットガール~受け継がれし希望~よろしくお願いします。
    URL(Android):https://play.google.com/store/apps/details?id=com.halcyon.pocketgirl3
    URL(iOS):https://itunes.apple.com/jp/app/id1539553611

    PV:


    Dictionaryをforeachで更新するときのお話。
    こんな感じでやると怒られます。

    Dictionary dic = new Dictionary { { 0, 1 }, { 1, 2 }, { 2, 3 }, { 3, 4 }, { 4, 5 } };
    foreach(int key in dic.Keys)
    {
    dic[key] = 0;
    }



    解決策としては、Keyでリストを作ってそれを使うとうまくいきます。

    Dictionary dic = new Dictionary { { 0, 1 }, { 1, 2 }, { 2, 3 }, { 3, 4 }, { 4, 5 } };
    // dic.Keysをリストにする
    List keyList = new List(dic.Keys);
    // 作ったリストを使ってforeachを回す
    foreach (int key in keyList)
    {
    dic[key] = 0;
    }

    これで問題なく更新できます。
    そういえばこんなこともあったなぁと思ったのでメモ的なお話です。

    ではではノシ

    Category: 開発日記(Unity)

    tb 0 : cm 0