包含字符串数组作为值的字典

时间:2013-10-09 12:49:18

标签: vb.net

是否可以将字符串数组作为字典中的值?我需要将描述(Hour2)保存为键,并且值能够访问价格(elements_PR(4))和时间偏移量(1)。有没有办法做到这一点?

Dim pr_val(2) As String
Dim PR As New Dictionary(Of String, pr_val)

PR.Add("Hour2", {elements_PR(4), "1"})

4 个答案:

答案 0 :(得分:1)

没有理由不能这样做 - 你也可以使用Tuple(Of String,String)类型的值,如果元素的数量是事先修复的 - 在这种情况下,2。它是更容易进行比较,也是不可变的,这通常是一个好主意。

答案 1 :(得分:1)

你确定可以。尝试这样的事情:

Dim PR As New Dictionary(Of String, IEnumerable(Of String))
PR.Add("Hour2", {elements_PR(4), "1"})

答案 2 :(得分:1)

在我看来,你可以创建一个代表价格和时间偏移的类。因此,您可以执行PR.Add("Hour2", instanceOfClass)

之类的操作

根据您情况中描述的含义,您甚至可以将其包含在课堂中。它允许您使用另一种方法,List(Of YourClass)包含具有描述,价格和时间偏移的项目列表。要通过“键”检索项目,您可以使用一些Linq。

答案 3 :(得分:0)

简短回答 - 是的。假设在某处声明了以下内容:

Dim elements_PR(4) As String : elements_PR(4) = "Hello"
Dim PR As New Dictionary(Of String, String())

您可以这样做:

PR.Add("Hour2", {elements_PR(4), "1"})

Dim pr_val() As String = {elements_PR(4), "1"}
PR.Add("Hour1", pr_val)