1

クラス Player があります。このクラスには 6 つほどのプロパティがあり、すべて整数です。私のプロジェクトでは、いくつかの並べ替えが必要です。プレーヤーのリストとそれらを並べ替えるプロパティを受け入れる関数を記述できるようにしたいと思います。渡されたプロパティで並べ替えられたプレーヤーのリストを返します。

Class Player
   Public Property PID
   Public Property RunsScored
   PublicProperty  BallsFaced
End Class

Class AnotherClass
    Public Shared PlayerList As New List(Of Player)

    Public Player sort(list As List(Of Player), prop As Property)
        'sort the list by prop
        Return sorted list
    End Function

しかし、これが物かどうかはわかりませんが、名前はありますか? それは可能ですか?

4

2 に答える 2

2

これを行う最善の方法は、コレクション内の各オブジェクトのプロパティを返すデリゲートを取得することです

Public Player sort(list As List(Of Player), func As Func(Of Player, Object))
  'sort the list by prop
  Return sorted list
End Function

次に、呼び出しサイトでラムダを使用して、使用するプロパティを指定できます

sort(list, Function(player) player.PID)
于 2013-08-20T22:29:43.823 に答える