我想分解兩個列表: 首先是一個整數列表。我decare它爲:爲什麼泛型列表的聲明有所不同?
List<Integer> ints= Arrays.asList(1,2,3);
它工作正常。
其次是對象列表。我宣佈它爲:
List<Object> objs= Arrays.asList(1,2.13,"three");
但是它會在我寫它時立即給出一個錯誤。錯誤是:
Multiple markers at this line
- Type mismatch: cannot convert from List<Object&Comparable<?>&Serializable> to
List<Object>
- Type safety: A generic array of Object&Comparable<?>&Serializable is created for
a varargs parameter
相反,如果我寫
List<Object> objs = Arrays.<Object>asList(1,2.13,"three");
它工作正常。
我無法弄清楚原因。
明白了。感謝非常好的解釋。如果出現這種混淆,這將是一個適用的金科玉律。 – 2012-03-30 12:29:31