Java 如何获取ArrayList的子列表

Java 如何获取ArrayList的子列表

列表接口是一个集合,它存储了一系列的元素。ArrayList是List接口最常用的实现方式。列表提供了用户对元素插入位置的精确控制。这些元素可以通过它们的索引进行访问和搜索。ArrayList是List接口最常见的实现方式。

Java List提供了一个subList()方法,根据提供的起始和结束索引返回列表的部分内容。在本文中,我们将看到如何使用subList()方法从ArrayList获取子列表。

语法

List<E> subList(int fromIndex, int toIndex)

注意

  • 返回列表中指定索引范围内的视图,包括起始索引,但不包括结束索引。

  • 如果起始索引和结束索引相等,则返回的列表为空。

  • 返回的列表使用当前列表作为支持,因此在返回的列表中进行非结构性更改将反映在当前列表中,反之亦然。

  • 返回的列表支持当前列表支持的所有可选列表操作。

参数

  • fromIndex - 子列表的起始索引(包含)。

  • toIndex - 子列表的结束索引(不包含)。

返回值

返回当前列表中指定范围的视图。

异常

  • IndexOutOfBoundsException - 当起始索引或结束索引非法时抛出(起始索引 < 0 || 结束索引 > 大小 || 起始索引 > 结束索引)

示例1

以下是从列表中获取子列表的示例 –

package com.tutorialspoint;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class CollectionsDemo {
   public static void main(String[] args) {
      List<Integer> list = new ArrayList<>(Arrays.asList(0,1,2,3,4,5,6,7,8,9));
      System.out.println("List: " + list);

      // Get the subList
      List<Integer> subList = list.subList(3, 9);
      System.out.println("SubList: " + subList);
   }
}

输出

这将产生以下结果−

List: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
SubList: [3, 4, 5, 6, 7, 8]

示例2

以下是使用subList()方法从列表创建子列表时出现的副作用的示例。

package com.tutorialspoint;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class CollectionsDemo {
   public static void main(String[] args) {
      List<Integer> list = new ArrayList<>(Arrays.asList(0,1,2,3,4,5,6,7,8,9));
      System.out.println("List: " + list);

      // Get the subList
      List<Integer> subList = list.subList(3, 9);
      System.out.println("SubList: " + subList);

      // Clear the sublist
      subList.clear();
      System.out.println("SubList: " + subList);

      // Original list is also impacted.
      System.out.println("List: " + list);
   }
}

输出

这将产生以下结果 −

List: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
SubList: [3, 4, 5, 6, 7, 8]
SubList: []
List: [0, 1, 2, 9]

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程