在VB.NET中创建关联数组的正确方法是什么?

时间:2011-08-18 18:46:35

标签: vb.net

我是一个PHP人,在PHP中我会做类似以下的事情:

$variable = array('0001'=>'value1', '0010'=>'value2');

我对VB.NET很新,所以如何将上述代码翻译成VB.NET?

我想我必须使用字典:

Dim variable As New Dictionary(Of String, String)
variable.Add("0001", "value1")
variable.Add("0010", "value2")

这是正确的做法吗?还是我应该使用别的东西呢?

2 个答案:

答案 0 :(得分:15)

这是一种方式,或者如果您更喜欢单行初始化方式,您可以这样做:

Dim variable As New Dictionary(Of String, String) From { {"0001", "value1"}, {"0010", "value2"} }

就哪个更好而言,更多的是编码标准和/或个人偏好。

考虑使用哪种容器,除非另有强制要求,否则应仅使用System.Collection.Generics.NET的容器。而Dictionary是默认的关联容器。您可以看到替代方案(例如SortedDictionary),如果它与您的用例匹配更多。

答案 1 :(得分:1)

您可以使用 Collection

Dim var As New Collection
var.Add("vakue1", "0001")
var.Add("value2", "0010")

使用以下方式遍历所有:

For Each v As String In var

Next

有关处理项目的其他方法,请查看 Collection(Of T) Class MSDN)中的示例。