问题
I am writing simple program which will eventually plot the run times of various sorting algorithms written in Java. The general interface of a sorting algorithm is via a method: public void sort(Comparable[] xs)
I am attempting to use Java 8's stream mechanism to generate random test cases along the following lines:
public static IntStream testCase(int min, int max, int n) {
Random generator = new Random();
return generator.ints(min, max).limit(n);
}
My question is, how can I convert an object of type IntStream
to an Integer[]
?
回答1:
You should box the IntStream
to a Stream<Integer>
, then call toArray to make a array of it:
Integer[] arr = testCase(1,2,3).boxed().toArray(Integer[]::new);
来源:https://stackoverflow.com/questions/35461131/java-8-intstream-to-integer