有人可以帮我讲述如何声明一个可以携带字符串和整数的2D数组吗?
我想存储像
这样的值Name1 Roll Number1
Name2 Roll number2
谢谢你们俩。这有点消化。虽然,我不明白这些代码,但我很高兴能够学习....我认为值得分享一下我想要完成的事情。我相信你们有一个更聪明的方法来执行它。我有2个文本文件可以携带部件号例如。让我们说
文件1: PartA_Rev001 PartB_Rev001 PartD_Rev001 PartC_Rev001 PartC_Rev001
文件2: PartA_Rev002 PartB_Rev002 PartD_Rev002 PartC_Rev001
最后,我需要打印'在文件2中,删除PartC_Rev001的一个实例'
为此,我将文件读入2个暗淡的数组。作为下一步,我想到并计算两个阵列的重复并最终比较它们 看起来很麻烦,但想不出更好的逻辑!
答案 0 :(得分:0)
您可以将数组声明为Object
。
Dim arr(0 to 10, 0 to 1) As Object
但是你不应该
而是使用必填字段声明Class
或Structure
,并声明其中的一维数组。
Public Structure Data
Public Name As String
Public RollNumber As Integer
End Structure
Dim arr(0 To 10) As Data
答案 1 :(得分:0)
我喜欢使用列表和自定义类。它非常像GSerg的示例,但我发现列表更容易管理,如果需要,您总是可以从列表中派生出一个数组。
Public Class MyCustomClass
Private _Name1 as string
Private _Roll1 as integer
Property Name1() as string
Get()
if not isnothing(_Name1) then
Return _Name1
else
Return "Nothing"
End if
End get
Set(Value as string)
_Name1 = value
End Set
Property Roll1() as integer
Get() as integer
Return _roll1
End get
Set(Value as integer)
_Roll1 = value
End Set
sub new(RollersName1 as string, Rollvalue1 as integer)
Name1 = Rollersname1
Roll1 = Rollvalue1
end sub
end class
用法
Dim Rolls as new list(of MyCustomClass)
Rolls.add(new MyCustomClass("Henry", 6))
Rolls.add(new MyCustomClass("manny", 2))
Rolls.add(new MyCustomClass("Henry", 5))
Rolls.add(new MyCustomClass("manny", 2))
Rolls.add(new MyCustomClass("Henry", 1))
Rolls.add(new MyCustomClass("manny", 6))
for each R as MyCustomClass in Rolls
Console.writeline("Player: " & R.Name1 & " Rolled a " & R.roll1.tostring())
next