Computer >> Máy Tính >  >> Lập trình >> C#

Làm thế nào để so sánh hai từ điển trong C #?

Để so sánh hai từ điển, trước tiên hãy đặt hai từ điển -

Từ điển Một

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);

Từ điển Một

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);

Bây giờ chúng ta hãy so sánh chúng -

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;
      }
   }
}

Trên đây so sánh hai từ điển. Bây giờ bảng điều khiển in và kết quả sẽ là True. Điều đó có nghĩa là cả hai từ điển đều có cùng giá trị.