c# - 如何使用 3 维键创建字典

标签 c# dictionary valuetuple

我需要某种像字典一样工作的结构,但关键是一个 3D 点(由 3 个整数表示)。

Ball b1 = new Ball();
Ball b2 = new Ball();

D[-1,3,29] = b1;
D[9,0,3] = b2;
我正在考虑创建这样的东西:
Dictionary<int, Dictionary<int, Dictionary<int, Ball>>> D = new ...
有没有更好的方法?

最佳答案

当与简单类型一起使用时,ValueTuple 具有适当的相等性和哈希码行为。因此,您可以在字典中使用它们(并且是合适的)。

var dict = new Dictionary<(int,int,int),something>
dict.Add((1,2,3), sometthing);

关于c# - 如何使用 3 维键创建字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65974802/

相关文章:

c# - 如何显示流返回的 pdf(在 JsonResult 中)?

c# - System.Net.Http.HttpClient.PostAsync 阻塞并且永不返回

ios - 如何访问元组字典中的值 swift 4

c# - ValueTuple 不支持 DisplayMemberPath。组合框,WPF

C#7 值元组/解构不对称

c# - Azure Function (v1) 中的 ValueTuple 问题

具有多个发送者的 C# 单个 UDP 监听器提供数据问题

c# - C# 中的基本多线程问题

c++ - 从 3 级 map 的第 2 级获取所有键

c# - 我的字典 wp 应用程序在 c#