Dim names() As String={"赵沿骅","赵思群","范丙刚","徐红","范瑞"}
Dim Marks() As Integer={99,90,85,89,86}
Array.sort(Marks,names)
Output.show(names(0)&"="& Marks(0))
Output.show(names(1)&"="& Marks(1))
Output.show(names(2)&"="& Marks(2))
Output.show(names(3)&"="& Marks(3))
Output.show(names(4)&"="&Marks(4))
Output.show(names.length)
范丙刚=85
范瑞=86
徐红=89
赵思群=90
赵沿骅=99
5
老师,在上述对数组的排序中默认从小到大,如果要改为从大到小可以不?要怎么更改排序的方式
全局代码Public Class myReverserClass
Implements System.Collections.IComparer
Function Compare(x As [Object], y As [Object]) As Integer Implements System.Collections.IComparer.Compare
Return New System.Collections.CaseInsensitiveComparer().Compare(y, x)
End Function
End Class
使用
Dim names() As String={"赵沿骅","赵思群","范丙刚","徐红","范瑞"}
Dim Marks() As Integer={99,90,85,89,86}
Dim myComparer = New myReverserClass()
Array.Sort(Marks,names,myComparer)
Output.show(names(0)&"="& Marks(0))
Output.show(names(1)&"="& Marks(1))
Output.show(names(2)&"="& Marks(2))
Output.show(names(3)&"="& Marks(3))
Output.show(names(4)&"="&Marks(4))
Output.show(names.length)
全局代码Public Class myReverserClass
Implements System.Collections.IComparer
Function Compare(x As [Object], y As [Object]) As Integer Implements System.Collections.IComparer.Compare
Return New System.Collections.CaseInsensitiveComparer().Compare(y, x)
End Function
End Class
有复制进去吗
Dim names() As String = {"赵沿骅", "赵思群", "范丙刚", "徐红", "范瑞"}
Dim Marks() As Integer = {99, 90, 85, 89, 86}
Dim d As New SortedDictionary(Of Integer, String)
For i As Integer = 0 To Marks.Length - 1
d.Add(Marks(i), names(i))
Next
For i As Integer = d.Keys.Count - 1 To 0 Step - 1
Output.Show(d.Keys(i) & "=" & d(d.Keys(i)))
Next