Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C#

Chương trình C# tìm Union của hai hoặc nhiều Dictionary

Thiết lập hai Dictionary:

Dictionary<string, int> dict1 = new Dictionary<string, int>();
dict1.Add("water", 1);
dict1.Add("food", 2);

Dictionary<string, int> dict2 = new Dictionary<string, int>();
dict2.Add("clothing", 3);
dict2.Add("shelter", 4);

Tạo HashSet từ Key của dict1, dùng UnionWith thêm Key của dict2:

HashSet<string> hSet = new HashSet<string>(dict1.Keys);
hSet.UnionWith(dict2.Keys);

Ví dụ hoàn chỉnh

using System;
using System.Collections.Generic;

public class Program
{
    public static void Main()
    {
        Dictionary<string, int> dict1 = new Dictionary<string, int>();
        dict1.Add("water", 1);
        dict1.Add("food", 2);
        
        Dictionary<string, int> dict2 = new Dictionary<string, int>();
        dict2.Add("clothing", 3);
        dict2.Add("shelter", 4);
        
        HashSet<string> hSet = new HashSet<string>(dict1.Keys);
        hSet.UnionWith(dict2.Keys);
        
        Console.WriteLine("Hợp của Dictionary...");
        foreach (string val in hSet)
        {
            Console.WriteLine(val);
        }
    }
}

Kết quả

Hợp của Dictionary...
water
food
clothing
shelter

Lưu ý: Chỉ gộp Key, Value bị bỏ qua. Nếu Key trùng nhau, chỉ giữ một. HashSet tự động loại bỏ trùng lặp.