list是对象实例名,而ArrayList是类名,你别搞混了。
根据参考链接,subList()方法的返回的是ArrayList的内部类SubList对象,而不是ArrayList对象,所以不能使用ArrayList类型来接收它。
测试如下:
参考链接:
import java.util.ArrayList;
import java.util.List;
public class ArrayListTest {
public static void main(String[] args) {
ArrayList arrayList = new ArrayList();
arrayList.add("tom");
arrayList.add("jack");
// https://blog.csdn.net/qq_43842093/article/details/125436583
List list = arrayList.subList(0, 2);
System.out.println(list);
}
}
参考GPT,希望可以解决你的疑惑:
在Java中,subList()方法的参数是起始索引和结束索引,而不是一个小数。
此外,ArrayList的subList()方法返回的是一个List而不是ArrayList。
以下是根据你的要求生成的代码:
ArrayList<Integer> list = new ArrayList<>();
// 添加一些元素到list中
list.add(1);
list.add(2);
list.add(3);
list.add(4);
list.add(5);
// 获取list的子列表
List<Integer> sublist = list.subList(0, 2);
在这个例子中,我们创建了一个包含整数的ArrayList,并向其中添加了一些元素。
然后,我们使用subList()方法获取list的子列表,起始索引为0,结束索引为2(不包含2)。最后,将子列表存储在一个List变量sublist中。