Fio*_*dor 4 java integer java-8 java-stream
我在SO上找到了这个代码来将字符串映射到整数
Arrays.stream(myarray).mapToInt(Integer::parseInt).toArray();
Run Code Online (Sandbox Code Playgroud)
但是我如何使它映射到Integer类型而不是原始int?
我尝试切换Integer.parseInt到Integer.valueOf,但似乎该mapToInt()方法强制原始类型.
我有一个Integers数组的ArrayList,所以我不能使用原始的int.
由于String和Integer都是引用类型,您可以简单地调用Stream::map转换数组.
Integer[] boxed = Stream.of(myarray).map(Integer::valueOf).toArray(Integer[]::new);
Run Code Online (Sandbox Code Playgroud)
你可以使用该Stream<Integer> boxed()方法。
Stream<Integer> boxed()返回一个由该流的元素组成的 Stream,每个元素装箱为一个 Integer。
ArrayList<Integer[]> resultSet = new ArrayList<>();
resultSet.add(Arrays.stream(myarray).mapToInt(Integer::parseInt).boxed().toArray(Integer[]::new));
Run Code Online (Sandbox Code Playgroud)