如何在 C# 中比較兩個字典?


若要比較兩個字典,首先設定兩個字典 -

字典一

IDictionary<int, int> d = new Dictionary<int, int>();
d.Add(1,97);
d.Add(2,89);
d.Add(3,77);
d.Add(4,88);

// Dictionary One elements
Console.WriteLine("Dictionary One elements: "+d.Count);

字典一

IDictionary<int, int> d2 = new Dictionary<int, int>();
d2.Add(1,97);
d2.Add(2,89);
d2.Add(3,77);
d2.Add(4,88);

// Dictionary Two elements
Console.WriteLine("Dictionary Two elements: "+d2.Count);

現在,讓我們比較它們 -

bool equal = false;
if (d.Count == d2.Count) { // Require equal count.
   equal = true;
   foreach (var pair in d) {
      int value;
      if (d2.TryGetValue(pair.Key, out value)) {
         if (value != pair.Value) {
            equal = false;
            break;
         }
      } else {
         equal = false;
         break;
      }
   }
}

以上內容比較了兩個字典。現在列印控制檯,結果將為真。這意味著兩個字典具有相同的值。

更新日期:2020 年 6 月 21 日

3K+ 瀏覽量

開啟你的職業生涯

透過完成課程取得認證

開始
廣告