3

我有两个不同的字典:

Dictionary<int, User> X;
Dictionary<int, User> Y;

我想使用 LINQ 从他们那里获取相同键的列表。

4

2 回答 2

7
var sameKeys = X.Keys.Intersect(Y.Keys).ToList();
于 2012-11-24T13:20:58.497 回答
0

我会推荐这样的东西: -

  var dict = new Dictionary<int, HashSet<string>>();
  dict.Add(1, new HashSet<string>() { "first", "second" });

或者你可以试试这个: -

  var items = new List<KeyValuePair<int, String>>();
  items.Add(new KeyValuePair<int, String>(1, "first"));
  items.Add(new KeyValuePair<int, String>(1, "second"));
  var lookup = items.ToLookup(kvp => kvp.Key, kvp => kvp.Value);

  foreach (string x in lookup[1])
  {
     Console.WriteLine(x);
  }
于 2012-11-24T13:24:13.350 回答