我在vb.net中排序2维数组时遇到麻烦。一行有5列。原始数组有3000行。如何使用pdtId进行有效排序。我试图找到谷歌搜索,无法得到正确的答案。
(0, 0) = pdtId "string"
(0, 1) = brand name
(0, 2) = category Id
(0, 3) = url
(0, 4) = date
(1, 0) = pdtId "string"
(1, 1) = brand name
(1, 2) = category Id
(1, 3) = url
(1, 4) = date
。 。 3000行 任何人都可以帮助我,大麻烦,:(
答案 0 :(得分:1)
不要使用二维数组或数组数组。最好为五个字段创建一个类,并将该类的对象放入一维数组中:
Public Class MyData
Implements IComparable(Of MyData)
Public pdtId As String
Public brand_name As String
Public category_Id As String
Public url As String
Public theDate As Date
Public Overloads Function CompareTo(ByVal obj As MyData) As Integer _
Implements IComparable(Of MyData).CompareTo
Return pdtId.CompareTo(obj.pdtId)
End Function
End Class
Sub Main()
Dim myArray(3000) As MyData
' Code to fill the array
' ...
Array.Sort(myArray)
End Sub
答案 1 :(得分:0)
您应该在这里使用数组数组 - 多维数组仅适用于行(第一个索引)中数字'列'(第二个索引)不同的情况。
如果你改为使用数组或数组,使用Array.Sort解决问题变得非常容易。