我知道,如果你想有一個列表(例如)在創建它想:在Java中做什麼<>?
List<String>
如果你想創建一個通用類型的列表,你可以做到這一點,如:
MyList<T>
那麼, <>所做的唯一事情是將一個對象與一個容器或列表結合起來?它有其他用途嗎?它實際上做了什麼? 正在閱讀另一篇文章,如何將靜態方法放入泛型類型對於類型安全來說是一件壞事,那麼這種不好的代碼呢?
public class LinkList<T> {
private final T t;
private final LinkList<T> next;
public LinkList(T t, LinkList<T> next){
this.t = t;
this.next = next;
}
// Creates list from array of T
public static <T> LinkList<T> getList(T[] t){
if(t == null){
return null;
}
LinkList linkList = null;
for(int i = t.length-1; i >= 0; i--){
linkList = new LinkList(t[i], linkList);
}
return linkList;
}
public T element() {
return t;
}
public LinkList<T> getNext() {
return next;
}
}
它指定一種類型的參數。你可以閱讀更多關於泛型的知識[在這裏,在相關的Java教程](http://docs.oracle.com/javase/tutorial/extra/generics/simple.html)。 – oldrinb 2012-08-09 20:43:06
所以...這是不好的代碼,因爲在泛型類型中的靜態方法?在那裏有什麼潛在的危險?是否可以在列表中插入多個類型的問題,還是會給我一個編譯錯誤? – GenericJam 2012-08-09 20:51:44
重複http://stackoverflow.com/questions/31693/what-are-the-differences-between-generics-in-c-sharp-and-java-and-templates-i的? – 2012-08-09 20:53:09