我需要创建一个多维(嵌套)哈希表/字典,以便我可以使用类似的语法
val = myHash("Key").("key")
我知道我需要使用泛型,但我无法在 ASP.NET 2.0 中使用 VB 找出正确的语法,网上有很多 c# 示例,但它们并没有多大帮助。
干杯!
我需要创建一个多维(嵌套)哈希表/字典,以便我可以使用类似的语法
val = myHash("Key").("key")
我知道我需要使用泛型,但我无法在 ASP.NET 2.0 中使用 VB 找出正确的语法,网上有很多 c# 示例,但它们并没有多大帮助。
干杯!
好的,我在 C# 方面比 vb.net 更好,但我会试一试......
Dim myHash as Dictionary(Of string, Dictionary(Of string, Integer));
还有 System.Collections.Specialized.StringDictionary(Of T) 集合,它只是一个预定义的 Dictionary(Of String, T)。
使用普通 Dictionary 或 StringDictionary 的语法如下所示:
val = myHash("key")("key")
不像这样:
val = myHash("key").("key")
考虑到您可能只需要使用 Dictionary,它可以将您的多个键组合成具有自己的复合哈希码的单个键对象。例如,制作一个多键类,然后将其用作键。
在伪代码中:
class Multikey {
private keys;
public setKey1(...)
public setKey2(...)
}
Dim myKey as MultiKey(...)
myKey.key1 = ...
myKey.key2 = ...
Dim mydic as Dictionary(Of MultiKey, Integer)
val = mydic(myKey)