Vaibhav Mittal:
Stream.of(int[])
rendements Stream<int[]>
, alors que les Stream.of(String[])
rendements Stream<String>
.
Pourquoi les deux méthodes se comportent différemment? Les deux doivent avoir soit retourné Stream<int>
et Stream<String>
ou Stream<int[]>
et 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);
Ils étaient les suivants:
Il n'y a pas une telle chose Stream<int>
, tout comme il n'y a pas List<int>
. Paramètres de type générique ne peuvent pas être substitués avec des types primitifs.
Pour un courant de (primitifs) int
éléments il y a IntStream
. IntStream.of(int... values)
et Arrays.stream(int[] array)
permettra à la fois vous donner un IntStream
, dont les éléments sont int
, où vous passez un int[]
pour eux.