我在Java中有这个奇怪的(我认为)问题。我有一个 ArrayList,我想获取一个子列表。但我得到以下异常。
package javatest;
import java.util.ArrayList;
public class JavaTest {
public static void main(String[] args) {
ArrayList<Integer> alist = new ArrayList<Integer>();
alist.add(10);
alist.add(20);
alist.add(30);
alist.add(40);
alist.add(50);
alist.add(60);
alist.add(70);
alist.add(80);
ArrayList<Integer> sub = (ArrayList<Integer>) alist.subList(2, 4);
for (Integer i : sub)
System.out.println(i);
}
}
运行:线程“main”中的异常 java.lang.ClassCastException:java.util.RandomAccessSubList 无法在 javatest.JavaTest.main(JavaTest.java:17) 处转换为 java.util.ArrayList Java 结果:1
获取子列表的正确方法是什么?
谢谢