Java中List
接口,List
接口提供了一个subList
方法,该方法允许获取原始列表的一个视图(view),该视图包含从指定起始索引(包含)到指定结束索引(不包含)之间的元素。
使用ArrayList
和subList
方法:
import java.util.ArrayList;
import java.util.List;
public class ListSliceExample {
public static void main (String[] args) {
// 创建ArrayList
List<String> list = new ArrayList<>();
list.add("Apple");
list.add("Banana");
list.add("Cherry");
list.add("Date");
list.add("Elderberry");
// 打印原始列表
System.out.println("Original List: " + list);
// 使用subList方法截取列表的一部分
// 从索引1到索引4
List<String> subList = list.subList(1, 4);
// 打印截取后的子列表
System.out.println("SubList: " + subList);
// 注意:subList是原始列表的一个视图,因此对它所做的更改将反映在原始列表中
subList.set(1, "Blueberry"); // 将子列表中的第二个元素(Cherry)替换为Blueberry
// 再次打印原始列表以查看更改
System.out.println("Original List after modifying SubList: " + list);
}
}
使用 Collections 类的 indexOfSubList() 和 lastIndexOfSubList() 方法:
import java.util.*;
public class Main {
public static void main (String[] args) {
List list = Arrays.asList("one Two three Four five six one three Four".split(" "));
System.out.println("List :"+list);
List sublist = Arrays.asList("three Four".split(" "));
System.out.println("子列表 :"+sublist);
System.out.println("indexOfSubList: "
- Collections.indexOfSubList(list, sublist));
System.out.println("lastIndexOfSubList: "
- Collections.lastIndexOfSubList(list, sublist));
}
}