我有两个hashtable , A和B,现在要把B的内容插入到A里面去,如何执行?例:
A表:
  KEY    VALUE
  城市   南京
  省会   南京B表:
  key   value
  早饭  粥
  中饭  粥想要的结果:
 
A表:
  KEY    VALUE
  城市   南京
  省会   南京
  早饭   粥
  中饭   粥

解决方案 »

  1.   

    //循环
    foreach (object key in B.Keys)
    {
        if (A.Contains(key)) continue;
        A.Add(key, B[key]);
    }
      

  2.   

    Hashtable A = new Hashtable();
    A.Add("城市", "南京");
    A.Add("省会", "南京");
    Hashtable B = new Hashtable();
    B.Add("早饭", "粥");
    B.Add("中饭", "粥");
    //循环
    foreach (object key in B.Keys)
    {
        if (A.Contains(key)) continue;
        A.Add(key, B[key]);
    }
      

  3.   

    foreach (DictionaryEntry de in B)
                    {
                        A.Add(de.Key.ToString(), de.Value.ToString());
                    }
      

  4.   

     foreach (System.Collections.DictionaryEntry objDE in B)
    {
        a.Add(objDE.Key.ToString(),objDE.Value.ToString());
    }建议你使用泛型集合。
                    Dictionary<string, string> b = new Dictionary<string, string>();
    b.Add("早饭"," 粥");
      

  5.   

    Dictionary<string, string> A = new Dictionary<string, string>();
    A.Add("城市", "南京");
    A.Add("省会", "南京");
    Dictionary<string, string> B = new Dictionary<string, string>();
    B.Add("早饭", "粥");
    B.Add("中饭", "粥");
    //循环
    foreach (string key in B.Keys)
    {
        if (A.ContainsKey(key)) continue;
        A.Add(key, B[key]);
    }
    //Linq
    A = A.Concat(B).Distinct().ToDictionary(a => a.Key, b => b.Value);
    foreach (string key in A.Keys)
    {
        Console.WriteLine(key + ":" + A[key]);
    }