C# 我有多种值类型需要存储,且需要快速索引 有什么好的结构么

C# 我有多种值类型需要存储 他们都对应同一个唯一ID怎么做最好
案例:
A类型实例 B类型实例 C类型实例 都和一个ID相关
能不能做到类似
Dictionary这种意思 说白了 一个key 对应多种不同类型的value
有类似的结构可以存储么 还是说必须构造一个结构体 然后Dictionary
不光有存储需求 索引也比较频繁

基于Monster 组和GPT的调写:
可以使用C#的泛型类Tuple来实现这个需求,Tuple可以将多个值封装在一起作为一个单元使用。你可以使用Dictionary<int, Tuple<A,B,C>>来存储这些值类型,其中键是唯一ID,而值是一个包含类型A、B、C的元组。

下面是一个示例代码:

Dictionary<int, Tuple<A,B,C>> dictionary = new Dictionary<int, Tuple<A,B,C>>();

// 添加一个元素
int id = 1;
A a = new A();
B b = new B();
C c = new C();
dictionary.Add(id, Tuple.Create(a, b, c));

// 获取元素
Tuple<A,B,C> tuple = dictionary[id];
A a_value = tuple.Item1;
B b_value = tuple.Item2;
C c_value = tuple.Item3;


使用元组的好处是它们是类型安全的,你可以使用Item1,Item2,Item3等属性来获取元组中的值。如果你希望使用一个自定义的数据结构,你可以创建一个新的类来封装A、B、C,这样你就可以使用Dictionary<int,D>来存储它们。

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632