0

我有一个循环,每次我得到 3 个不同的值 x、r 和 c 时,都在这个循环中。

我想要一个数组(我尝试过使用一个列表,但我不知道如何对其进行排序,搜索了很多!)它将在数组的新自动索引中输入循环每一轮的所有 3 个值,最后,我想根据升序对整个数组进行排序(x,然后是 r,然后是 c)。

例如,这些是我在数组中添加的值(我不需要这个数组的值,这些值 (1,2,3) 是值,类似于表格)

storage(1,2,3)
storage(2,3,4)
storage(3,4,5)
storage(4,5,6)

这3个实际上是一个容器在不同堆栈中的位置坐标,我想找出哪个更靠近表面,并且在更近的堆栈中。因此,我将它们添加到一个数组中,然后对它们进行排序,以便找到哪个更接近(前提是所有这些都与位于不同位置的相同类型的容器匹配)

4

1 回答 1

0

只需使用该.Sort()方法。它将使用IComparableArray. 如果您不指定自定义比较器,它将使用默认值,这对于Integer值是可以的。

大批:

Dim iNums() As Integer = New Integer() {1, 11, 7, 5}
Array.Sort(iNums)

列表:

Dim aux As New List(Of Integer)(New Integer() {1, 11, 7, 5})
aux.Sort()

如果您需要,您可以定义自己的比较器:http:
//msdn.microsoft.com/en-us/library/system.icomparable (v=vs.71).aspx

于 2013-02-20T08:33:25.213 回答