是否可以将字符串数组作为字典中的值?我需要将描述(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"})
答案 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)