我創建使用子列表Method.Now當我嘗試使用中的retainAll執行交集操作它拋出異常爲什麼在的retainAll ArrayList中拋出
中的retainAll(以下新的ArrayList)的例外方法適用於下面的代碼
List<Integer> arrNums1 = new ArrayList<Integer>();
arrNums1.add(1);
arrNums1.add(2);
arrNums1.add(3);
List<Integer> arrNums2 = arrNums1.subList(0, 1);
arrNums2.retainAll(arrNums1);
但是當我嘗試申請中的retainAll下面的代碼會生成異常,如下
Java代碼的
public class Generics1
{
public static void main(String[] args)
{
List<Fruits> arrFruits = new ArrayList<Fruits>();
Fruits objApple = new Apple();
Fruits objOrange = new Orange();
Fruits objMango = new Mango();
arrFruits.add(objApple);
arrFruits.add(objOrange);
arrFruits.add(objMango);
List<Fruits> arrNewFruits = arrFruits.subList(0, 1);
System.out.println(arrFruits.retainAll(arrNewFruits));
}
}
class Fruits {}
class Apple extends Fruits {}
class Orange extends Fruits {}
class Mango extends Fruits {}
錯誤
在可能的情況下,沒有未知關係的代碼示例是最好的。例如,這隻會在Fruit類中出現,還是會出現標準的Java類有相同的問題? –
當列表包含一個數字說當我創建一個列表 retainAll作品gr8 –
是的我使用了字符串,並測試它也工作 –