- 日時: 2007/08/31 18:59
- 名前: 花ちゃん
- ***********************************************************************************
* カテゴリー:[アルゴリズム][][] * * キーワード:構造体,配列,ソート,並べ替え,, * ***********************************************************************************
元質問:構造体配列のソートについて - タートル 2004/02/20-09:57 No.733
構造体配列を使用して複数キー指定でソートをしたいのですが(DBでいうORDER BY) どなたかよい方法をご存知ないでしょうか? 単一キー指定のソートは普通のソートでできるのですが。。。。
----------------------------------------------------------------------------------- Re: 構造体配列のソートについて - 魔界の仮面弁士 2004/02/20-12:55 No.734 ----------------------------------------------------------------------------------- 構造体にIComparableインターフェイスを実装しておけば、呼び出し側は、 『 Array.Sort(構造体配列変数) 』の1行だけでソートを行えます。
Protected Friend Structure MyUDT : Implements System.IComparable Friend Code As Integer, Name As String Friend Sub New(ByVal Code As Integer, ByVal Name As String) Me.Code = Code Me.Name = Name End Sub Private Function CompareTo(ByVal obj As Object) _ As Integer Implements System.IComparable.CompareTo Dim cmp As Integer Try Dim X As MyUDT = DirectCast(obj, MyUDT) cmp = Me.Code.CompareTo(X.Code) If cmp = 0 Then cmp = Me.Name.CompareTo(X.Name) End If Return cmp Catch Return 0 End Try End Function End Structure
|