Java 8:IntStream到Integer []

时间:2016-02-17 15:37:09

标签: java java-stream

我正在编写简单的程序,它最终会绘制用Java编写的各种排序算法的运行时间。排序算法的一般接口是通过一种方法:public void sort(Comparable[] xs)

我试图使用Java 8的流机制来生成以下几行的随机测试用例:

public static IntStream testCase(int min, int max, int n) {
    Random generator = new Random();
    return generator.ints(min, max).limit(n);
}

我的问题是,如何将IntStream类型的对象转换为Integer[]

1 个答案:

答案 0 :(得分:18)

您应该box IntStreamStream<Integer>,然后拨打toArray制作一个数组:

Integer[] arr = testCase(1,2,3).boxed().toArray(Integer[]::new);