Java ArrayList subList() 方法



描述

Java ArrayList subList() 方法返回此列表一部分的视图,使用 fromIndex(包含)和 toIndex(不包含)。如果 fromIndex 和 toIndex 相等,则返回空列表。返回列表中的任何非结构性更改也会反映在原始列表中,反之亦然。返回的列表也支持列表操作。

声明

以下是 java.util.ArrayList.subList() 方法的声明

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

参数

fromIndex − 起始元素的索引(包含)。

toIndex − 结束元素的索引(不包含)。

返回值

此方法返回此列表中指定范围的视图。

异常

IndexOutOfBoundsException − 如果端点索引值超出范围 (fromIndex < 0 || toIndex > size)。

IllegalArgumentException − 如果端点索引无序 (fromIndex > toIndex)。

从整数 ArrayList 获取子列表示例

以下示例演示了 Java ArrayList subList() 方法的使用。我们正在创建一个整数 ArrayList。我们使用每个元素的 add() 方法调用将几个整数添加到 ArrayList 对象中,并使用 subList() 方法获取列表的一部分,最后打印该部分。

package com.tutorialspoint;

import java.util.ArrayList;

public class ArrayListDemo {
   public static void main(String[] args) {
      
      // create an empty array list 
      ArrayList<Integer> arrayList = new ArrayList<>();

      // use add() method to add elements in the arrayList
      arrayList.add(0);
      arrayList.add(1);
      arrayList.add(2);
      arrayList.add(3);
      arrayList.add(4);
      arrayList.add(5);
      arrayList.add(6);
	  
      // get and print a sublist
      System.out.println(arrayList.subList(1,3));
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果:

[1, 2]

从字符串 ArrayList 获取子列表示例

以下示例演示了 Java ArrayList subList() 方法的使用。我们正在创建一个字符串 ArrayList。我们使用每个元素的 add() 方法调用将几个字符串添加到 ArrayList 对象中,并使用 subList() 方法获取列表的一部分,最后打印该部分。

package com.tutorialspoint;

import java.util.ArrayList;

public class ArrayListDemo {
   public static void main(String[] args) {
      
      // create an empty array list
      ArrayList<String> arrayList = new ArrayList<>();

      // use add() method to add elements in the arrayList
      arrayList.add("A");
      arrayList.add("B");
      arrayList.add("C");
      arrayList.add("D");
      arrayList.add("E");
      arrayList.add("F");
	  
      // get and print a sublist
      System.out.println(arrayList.subList(1,3));
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果:

[B, C]

从对象 ArrayList 获取子列表示例

以下示例演示了 Java ArrayList subList() 方法的使用。我们正在创建一个 Student 对象的 ArrayList。我们使用每个元素的 add() 方法调用将几个 Student 对象添加到 ArrayList 对象中,并使用 subList() 方法获取列表的一部分,最后打印该部分。

package com.tutorialspoint;

import java.util.ArrayList;

public class ArrayListDemo {
   public static void main(String[] args) {

      // create an empty arrayList
      ArrayList<Student> arrayList = new ArrayList<>();

      // use add() method to add elements in the arrayList
      arrayList.add(new Student(1, "Julie"));
      arrayList.add(new Student(2, "Robert"));
      arrayList.add(new Student(3, "Adam"));
	  
      // get and print a sublist
      System.out.println(arrayList.subList(1,3));   
   }
}

class Student {
   int rollNo;
   String name;

   Student(int rollNo, String name){
      this.rollNo = rollNo;
      this.name = name;
   }

   @Override
   public String toString() {
      return "[ " + this.rollNo + ", " + this.name + " ]";
   }
   
   @Override
   public boolean equals(Object obj) {
      Student s = (Student)obj;
      return this.rollNo == s.rollNo && this.name.equalsIgnoreCase(s.name);
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果:

[[ 2, Robert ], [ 3, Adam ]]
java_util_arraylist.htm
广告