我想从一个 char 数组构造一个流来使用 java 8 功能,例如过滤器和映射。
char[] list = {'a','c','e'};
Stream<Character> cStream = Stream.of(list);
// Stream<Character> cStream = Arrays.stream(list);
第一种方法不起作用(原因:将 cStream 更改为 Stream<char[]>
)。注释行也不起作用(原因:数组类型中的方法 stream(T[])
不适用于参数( char[]
))。
我知道如果 char[] list
更改为 int[]
,使用 IntStream
一切正常。但我不想每次都将 char[]
转换为 int[]
或者当我需要在 char
数组上使用流库时更改为列表。
原文由 Sangjin Kim 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以使用
IntStream
生成索引,后跟mapToObj
: