Stream.of(int[])
返回 Stream<int[]>
,而 Stream.of(String[])
返回Stream<String>
。
为什么两种方法的行为不同?两者都应该返回 Stream<int>
和Stream<String>
或Stream<int[]>
和Stream<String[]>
。
static int intArr[] = { 1, 2, 3, 4, 5 };
static String stringArr[] = { "3", "6", "8","14", "15" };
Stream<int[]> stream = Stream.of(intArr);
Stream<String> stream1 = Stream.of(stringArr);
没有这样的东西Stream<int>
,就像没有List<int>
一样。通用类型参数不能用原始类型代替。
对于(原始(int
元素的流,有IntStream
。IntStream.of(int... values)
和Arrays.stream(int[] array)
都将为您提供IntStream
,其元素是int
,您将int[]
传递给它们。