次のようにC#を直接介して収集するための辞書と、これらの値を変更は、与えられ、コードが与えられる。修飾のセットを、列挙操作が実行されなくてもよいです。コードは以下の通りです
ます。public void ForeachDic() { 辞書<文字列のInt32> DIC =新しい辞書<文字列のInt32>(); dic.Add( "1"、10); dic.Add( "2"、20); dic.Add( "3"、30); foreachの(KeyValuePair <文字列、のInt32> DICでのkVp) { Console.WriteLineを(String.Formatの( "キー:{0};値:{1}"、kvp.Key、kvp.Value))。 DIC [kvp.Key] = 100; //このアクションは文句であろう:コレクションが変更されている、列挙操作が実行されなくてもよいです。 } }
解決策は、次のように我々は、値の設定、変更、別のサイクルに配列を作成することができるということです。
プライベート無効ForeachDic() { 辞書<文字列のInt32> DIC =新しい辞書<文字列のInt32>(); dic.Add( "1"、10); dic.Add( "2"、20); dic.Add( "3"、30); 文字列[] keyArr = dic.Keys.ToArray <ストリング>(); 以下のために(int型私= 0;私<keyArr.Length; I ++) { DIC [keyStr [I] = DIC [keyStr [I] + 1。 } }
次のようにC#を直接介して収集するための辞書と、これらの値を変更は、与えられ、コードが与えられる。修飾のセットを、列挙操作が実行されなくてもよいです。コードは以下の通りです
ます。public void ForeachDic() { 辞書<文字列のInt32> DIC =新しい辞書<文字列のInt32>(); dic.Add( "1"、10); dic.Add( "2"、20); dic.Add( "3"、30); foreachの(KeyValuePair <文字列、のInt32> DICでのkVp) { Console.WriteLineを(String.Formatの( "キー:{0};値:{1}"、kvp.Key、kvp.Value))。 DIC [kvp.Key] = 100; //このアクションは文句であろう:コレクションが変更されている、列挙操作が実行されなくてもよいです。 } }
解決策は、次のように我々は、値の設定、変更、別のサイクルに配列を作成することができるということです。
プライベート無効ForeachDic() { 辞書<文字列のInt32> DIC =新しい辞書<文字列のInt32>(); dic.Add( "1"、10); dic.Add( "2"、20); dic.Add( "3"、30); 文字列[] keyArr = dic.Keys.ToArray <ストリング>(); 以下のために(int型私= 0;私<keyArr.Length; I ++) { DIC [keyStr [I] = DIC [keyStr [I] + 1。 } }