2012-06-11 62 views
1

我是一名初學者程序員,我在C#中遇到了這個問題。解決方案可能很簡單,但這不是我自己決定的。獲取LinkedList的第一個元素<T>

我有這個繼承LinkedList的自定義類,我需要一個方法來返回第一個元素,並從列表中刪除它。 代碼:

class CustomClass : LinkedList<CustomElement> 
{ 
    public CustomElement getFirstElement(){ 
     //here is the problem and I don't know how to solve it 
     CustomElement ce = this.First; 
     this.RemoveFirst(); 
     return first; 
    } 
} 

問題是,this.First返回一個LinkedListNode。我嘗試這樣做:

LinkedListNode<CustomElement> first = this.First; 

但隨後return語句失敗,因爲方法的類型爲CustomElement

+3

'return first.Value'? – Rawling

+0

考慮使用Queue,如果您想在讀取它時刪除(Dequeue)第一個元素。 – nunespascal

+1

不知道爲什麼這有這麼多downvotes。通過谷歌立即發現它,它包含了我需要的信息來解決我的問題。 – anon58192932

回答

7

documentation所述,可以使用LinkedListNode<T>Value屬性來訪問存儲在列表項中的值。因此,分配CustomElement ce = this.First.Value;