2013-11-01 94 views
0

的列表,所以我有一個枚舉排序枚舉

public enum CardValue 
{ 
    Deuce = 2, Three, Four.... //And so on.. 
} 

然後我也有一個結構

public struct Card 
{ 
    public CardSuit S; 
    public CardValue CV; 

    public Card(CardSuit Suit, CardValue value) 
    { 
     S = suit; 
     CV = value; 
    } 
} 

然後我填充我的列表中,其中一些卡值(全部隨機播放)。我試圖對它們進行排序,以便我可以從最高到最低的價值,並且我似乎無法做到。我正在嘗試的是:

List<Card> Hand1 = new List<Deck>(); 
Hand1.Sort(CardVale.Ace => CardValue.Duece) 

我只是想知道什麼是錯的。如果有人能夠幫助我,將不勝感激。

回答

1

排序需要在列表中的類轉換成你想要

Hand1.Sort(x=>x.CV)

排序的屬性的表達式像x=>x.CV表達式是

private static CardValue GetFieldToSortOn(Card x) { return x.CV; }

+0

的equivelent我沒有得到它工作,我用這個代碼的一個輕微的變體。謝謝。我只需要等待接受你的答案。 –