2014-05-22 35 views
0

我有下面的類:更新Java類,這樣一個列表可以接受任何類型

public class MyList { 

    private List<X> list = new ArrayList<X>(); 

    public List<X> getList() { 
     return list; 
    } 

    public void setList(List<X> list) { 
     this.list = list; 
    } 
} 

我想這個類能夠處理比「X」其他類型的列表。例如,如果我希望它能夠與Y的列表一起工作,該怎麼辦?我目前不知道可能需要處理的所有類型,所以它應該能夠處理任何類型。

+5

使該類具有通用性? –

+0

你是否想要相同的'MyList'可能有不同類型的對象(異構列表),或者你想讓每個'MyList'包含只有一種類型的元素? – ajb

+0

對於我的具體用例,類本身是一個原始類型,但我需要它包含的列表是一個可以包含任何類型的通用列表。 – vincentvanjoe

回答

5

研究在你的類中使用Java泛型。

public class MyList<T> { 

那麼無論你以前有X,你現在可以有T,例如List<T> list

+0

這是一個很好的答案,但我應該在我的問題中更具體 - 類本身需要是原始類型,因爲它用於保存從XML到List的xstream轉換。 – vincentvanjoe

+0

原來我用泛型能做到這一點。這個問題是在推廣List時的返回類型。它需要是 MyList vincentvanjoe

相關問題