为什么不能convert java.util.stream.IntStream to java.util.stream.Stream<? extends R>
Stream<String> streamOfStrings = Stream.of("hello", "world");
streamOfStrings.flatMap(String::chars).forEach(System.out::println);
此代码提供编译错误
Bad return type in method reference: cannot convert java.util.stream.IntStream to java.util.stream.Stream<? extends R>
使用flatMapToInt
而不是flatMap
:
streamOfStrings.flatMapToInt(String::chars).forEach(v -> System.out.println((char)v));