Java.util.Arrays 类

java.util.Arrays.parallelPrefix()方法用于执行parallelPrefix(int[], IntBinaryOperator) 用于数组的给定子范围。

语法

public static void parallelPrefix(int[] array,
                                  int fromIndex,
                                  int toIndex,
                                  IntBinaryOperator op)

参数

语法

import java.util.*;

public class MyClass {
  
  //两个int数相加
  static int MyFunc(int x, int y) { 
    return x + y; 
  } 

  public static void main(String[] args) {
    //创建一个int数组
    int Arr[] = {1, 2, 3, 4, 5};

    //打印Arr
    System.out.print("Arr contains:"); 
    for(int i: Arr)
      System.out.print(" " + i);
      
    //MyFunc与parallelPrefix方法一起使用来添加
    //索引范围[2,5)内的数组的每个元素
    Arrays.parallelPrefix(Arr, 2, 5, (a,b) -> MyFunc(a,b));

    //打印Arr
    System.out.print("\nArr contains:"); 
    for(int i: Arr)
      System.out.print(" " + i);
  }
}

参数

数组 指定数组。
fromIndex 指定第一个元素的索引(含)。
toIndex 指定最后一个元素的索引,独占。
op 指定一个无副作用的关联函数来执行累积。

返回值

void类型。

异常

  • 如果 fromIndex > toIndex,则抛出 IllegalArgumentException
  • 如果 fromIndex < 0 或 toIndex > array.length,则抛出 ArrayIndexOutOfBoundsException
  • 如果指定的数组或函数为 null,则抛出 NullPointerException

示例:

在下面的示例中,java.util.Arrays.parallelPrefix() 方法用于并行添加给定数组的给定范围内的每个元素。

Arr contains: 1 2 3 4 5
Arr contains: 1 2 3 7 12

输出上面的代码将是:

yxjc0trans1