我正在使用System.Linq中的ILookup来创建一个可以处理键值以上的字典。我想要的是拥有一个给定的Vector2(作为键),然后将所有值作为共享该键的列表或数组。
我正在使用Unity Vector2
public struct Image
{
public Vector2 pos19;
public string url;
}
我首先有一个清单
var items = new List<KeyValuePair<Vector2, Image>>();
我用
填写items.Add(new KeyValuePair<Vector2, Image>(intpos, img));
然后我使用
将其转换为IlookupILookup<Vector2, Image> Images = items.ToLookup(kvp => kvp.Key, kvp => kvp.Value);
这似乎有效,但现在我想找到某些键的值 我尝试使用
var pins = Images.Where(kv => ((int)kv.Key.x == x && (int)kv.Key.y == y)).ToList();
但这似乎不起作用 任何人都知道如何将键的值作为列表获取?
答案 0 :(得分:0)
Key
的{{1}}是Images
。您需要获取Vector2
才能键入查找。
Vector2