所以我需要做動態有序列表。不能轉換爲[Ljava.lang.Comparable
public class DynArrayListOrd<T extends Comparable<T>> {
private T[] tab ;
public DynArrayListOrd()
{
tab = (T[])new Object[startSize];
}
....
main {
DynArrayListOrd tab = new DynArrayListOrd();
tab.add("John");
tab.add("Steve");
}
當我運行代碼,我得到錯誤:
Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.Comparable;
at structures.DynArrayListOrd.<init>(DynArrayListOrd.java:14)
at structures.DynamicArrayAppp.main(DynArrayListOrd.java:119)
編譯時應該看到警告! –
可能的重複[如何在Java中創建通用數組?](http://stackoverflow.com/questions/529085/how-to-create-a-generic-array-in-java) – Paul
轉換不會實際上轉換任何「對象」。所以'(T [])new Object [...];'不會產生'T []'。 – Paul