Stream.of(int [])返回Stream <int []>,而Stream.of(String [])返回Stream <string>为什么?

时间:2019-05-26 07:07:34

标签: java

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);

1 个答案:

答案 0 :(得分:5)

没有Stream<int>这样的东西,就像没有List<int>一样。通用类型参数不能用原始类型替换。

(原始)int元素流中有IntStreamIntStream.of(int... values)Arrays.stream(int[] array)都会给您一个IntStream,其元素为int,在其中您将int[]传递给他们。