Java Arrays spliterator(T[] a) 方法



描述

Java Arrays spliterator(T[] a) 方法返回一个覆盖指定数组所有元素的 Spliterator。

声明

以下是 java.util.Arrays.spliterator(T[] a) 方法的声明

public static <T> Spliterator<T> spliterator​(T[] array)

类型参数

T − 这是元素的类型。

参数

a − 这是数组,假设在使用期间不会被修改。

返回值

此方法返回数组元素的 spliterator。

异常

Java Arrays spliterator(T[] a, int fromIndex, int toIndex) 方法

描述

Java Arrays spliterator(T[] a, int fromIndex, int toIndex) 方法返回一个覆盖指定数组指定范围的 Spliterator。

声明

以下是 java.util.Arrays.spliterator(T[] a, int fromIndex, int toIndex) 方法的声明

public static <T> Spliterator<T> spliterator​(T[] array, int fromIndex, int toIndex)

参数

  • a − 这是数组,假设在使用期间不会被修改。

  • fromIndex − 这是要覆盖的第一个元素的索引(包含)。

  • toIndex − 这是要覆盖的最后一个元素的索引(不包含)。

返回值

此方法返回数组元素的 spliterator。

异常

  • ArrayIndexOutOfBoundsException − 如果 fromIndex < 0 或 toIndex > array.length

获取对象数组的 Spliterator 示例

以下示例演示了 Java Arrays spliterator(T[]) 方法的使用。首先,我们创建了一个学生对象的数组。使用 spliterator() 方法后,打印该数组。

package com.tutorialspoint;

import java.util.Arrays;
import java.util.Spliterator;

public class ArrayDemo {
   public static void main(String[] args) {
      // initialize array
      Student arr[] = { new Student(1, "Julie"), new Student(2, "Robert"), new Student(3, "Adam"), new Student(4, "Jene") };

      System.out.print("Array: [ ");
      
      // get the spliterator
      Spliterator<Student> spliterator = Arrays.spliterator(arr);

      // use the spliterator to print each item
      spliterator.forEachRemaining(i -> System.out.print(i + " "));
      
      System.out.print("]");
   }
}
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 + " ]";
   }
}

输出

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

Array: [ [ 1, Julie ] [ 2, Robert ] [ 3, Adam ] [ 4, Jene ] ]

使用范围获取对象数组的 Spliterator 示例

以下示例演示了 Java Arrays spliterator(T[], int, int) 方法的使用。首先,我们创建了一个学生对象的数组。使用 spliterator() 方法后,打印该数组。

package com.tutorialspoint;

import java.util.Arrays;
import java.util.Spliterator;

public class ArrayDemo {
   public static void main(String[] args) {
      // initialize array
      Student arr[] = { new Student(1, "Julie"), new Student(2, "Robert"), new Student(3, "Adam"), new Student(4, "Jene") };

      System.out.print("Array: [ ");
      
      // get the spliterator
      Spliterator<Student> spliterator = Arrays.spliterator(arr, 0, arr.length);

      // use the spliterator to print each item
      spliterator.forEachRemaining(i -> System.out.print(i + " "));
      
      System.out.print("]");
   }
}
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 + " ]";
   }
}

输出

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

Array: [ [ 1, Julie ] [ 2, Robert ] [ 3, Adam ] [ 4, Jene ] ]

获取对象子数组的 Spliterator 示例

以下示例演示了 Java Arrays spliterator(T[], int, int) 方法的使用。首先,我们创建了一个学生对象的数组。使用 spliterator() 方法后,打印该子数组。

package com.tutorialspoint;

import java.util.Arrays;
import java.util.Spliterator;

public class ArrayDemo {
   public static void main(String[] args) {
      // initialize array
      Student arr[] = { new Student(1, "Julie"), new Student(2, "Robert"), new Student(3, "Adam"), new Student(4, "Jene") };

      System.out.print("Array: [ ");
      
      // get the spliterator
      Spliterator<Student> spliterator = Arrays.spliterator(arr, 0, 3);

      // use the spliterator to print each item
      spliterator.forEachRemaining(i -> System.out.print(i + " "));
      
      System.out.print("]");
   }
}
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 + " ]";
   }
}

输出

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

Array: [ [ 1, Julie ] [ 2, Robert ] [ 3, Adam ] ]
java_util_arrays.htm
广告