5
|
Edward Tanguay · 技术社区 · 16 年前 |
![]() |
1
10
如果一个键需要可变数量的值,为什么不创建
像这样的东西:
|
![]() |
2
5
退房 NGenerics ’ HashList . 这是一个字典,它维护每个键的值列表。 Wintellect's PowerCollections 库还有一个方便的多部门类,它可以在删除与给定键关联的最后一个值时自动清理。 |
![]() |
3
4
如何使容器值类型为列表:
|
![]() |
4
3
只是一些小改动…
|
![]() |
5
2
.NET Framework 3.5包含一个特殊的LINQ Lookup 班级。 它与字典类似,只是它可以用同一个键处理多个项。当您使用给定的键进行搜索,而不是接收单个元素时,您将接收一组与该键匹配的元素。 我读到它是一个封面下的哈希表,所以检索速度很快。 你可以这样使用它:
有一堆警告:
有一个 great article here 更详细地讨论查找及其含义。 |
![]() |
6
1
不,没有更好的内置收藏。我认为你的“自然倾向”非常适合解决这个问题,因为它们不是真正的“同一把钥匙”,而是由不同部分和
此方法将使用单个哈希表查找解析元素。如果为每个元素维护一个项目列表,则每次需要查找一个元素时,都必须线性遍历该列表,这会破坏使用
|
![]() |
7
0
我不知道有什么“多键字典”。我建议使用结构并重写gethashcode、equals并实现IEquatable<structname>(字典<tkey、tvalue>使用)。 |
![]() |
8
0
您是否希望将每个键的多个条目存储在一起?有点像 this ? |
![]() |
A B · C#Excel自动调整列避免长文本时出错 7 月前 |
![]() |
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 7 月前 |
![]() |
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 7 月前 |
|
Sei · Avalonia/WPF将路由器传递到控制模板 7 月前 |