作者retsamsu (haha)
看板C_Sharp
标题Re: [问题] ArrayList的sort
时间Tue Jul 31 13:15:45 2007
※ 引述《john110290 (阿建仔)》之铭言:
: 如果里面存放的是有一个以上变数的struct
: 他有办法照某个变数的大小去做排列吗
: 还是只能sort整数型态变数而已@@
: 谢谢
实做IComparer让Sort()知道怎麽sort
如(vb写法)
Structure Data
Public data1 As Integer
Public data2 As String
...
End Structure
...
Public Class DataComparer Implements IComparer
Public Function Compare(ByVal x As Object, ByVal y As Object) _
As Integer Implements IComparer
'这时看你要比哪个,假设比data2,用预设的String方式来比
Return String.Compare(x.data2, y.data2)
End Function
End Class
...
Dim d1 As New Data(...)
Dim d2 As New Data(...)
...
Dim al As New ArrayList()
al.Add(d1)
al.Add(d2)
...
al.Sort(New DataComparer())
这样就换按照你的方式Sorting了~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.209.4
※ 编辑: retsamsu 来自: 140.113.209.4 (07/31 13:17)
1F:推 john110290:感谢^^ 07/31 16:56