Arrays VB中的二维键值数组
在PHP中,我可以使用一个数组,其中字符串作为索引,数组作为值,如下所示:Arrays VB中的二维键值数组,arrays,vb6,Arrays,Vb6,在PHP中,我可以使用一个数组,其中字符串作为索引,数组作为值,如下所示: array( '01-01-2016' => array(0,1,2,3,4), '01-01-2016' => array(0,1,2,3,4), '01-01-2016' => array(0,1,2,3,4), '01-01-2016' => array(0,1,2,3,4), '01-01-2016' => array(0,1,2,3,4) )
array(
'01-01-2016' => array(0,1,2,3,4),
'01-01-2016' => array(0,1,2,3,4),
'01-01-2016' => array(0,1,2,3,4),
'01-01-2016' => array(0,1,2,3,4),
'01-01-2016' => array(0,1,2,3,4)
);
VB6中是否有等效项?使用集合,任何其他功能如获取项键(obj.key)都必须自己实现,要扩展集合对象,必须使用关键字
implement
实现集合,然后扩展它
现在,您可以这样做:
Private Sub Command1_Click()
Dim col As New Collection
Dim a,b
col.Add Array("1", 2, 3, 4), "key1"
col.Add Array("11", 12, 13, 14), "key2"
col.Add Array("21", 22, 23, 24), "key3"
For Each a In col
For Each b In a
Debug.Print b;
Next
Debug.Print vbCrLf & "-----------"
Next
End Sub
使用collection,任何其他功能,如获取项目密钥(obj.key),您必须自己实现它,要扩展集合对象,您必须使用关键字
implement
实现集合,然后扩展它
现在,您可以这样做:
Private Sub Command1_Click()
Dim col As New Collection
Dim a,b
col.Add Array("1", 2, 3, 4), "key1"
col.Add Array("11", 12, 13, 14), "key2"
col.Add Array("21", 22, 23, 24), "key3"
For Each a In col
For Each b In a
Debug.Print b;
Next
Debug.Print vbCrLf & "-----------"
Next
End Sub
在我看来,字典是比集合更直接的解决方案。Collection对象的一个限制是,正如mileyvo所提到的,无法直接获取集合中值的索引。Dictionary对象没有此限制。字典也更快:请参阅。此链接还解释了如何访问Dictionary对象中的键。另一个有用的链接。在我看来,字典是比集合更简单的解决方案。Collection对象的一个限制是,正如mileyvo所提到的,无法直接获取集合中值的索引。Dictionary对象没有此限制。字典也更快:请参阅。此链接还解释了如何访问Dictionary对象中的键。另一个有用的链接。使用脚本。字典(将“Microsoft脚本运行时”包含在项目引用中),将数组作为值存储在那里。使用集合对象使用脚本。字典(将“Microsoft脚本运行时”包含在项目引用中),将数组作为值存储在那里。使用集合对象