将ArrayList 转化为普通数组,Lambda 表达式

来源:互联网 发布:人族女捏脸数据 编辑:程序博客网 时间:2024/06/07 21:03

ArrayList 中的元素必须为对象,如何将其转为普通数组呢?

例如将 ArrayList<Integer> 转化为 int[] 数组,除了用 for 循环调用 ArrayList 中的 get 方法外,还可以使用 java8 中的 lambda 表达式。


举例:

import java.util.ArrayList;import java.util.Arrays;public class HelloWorld {public static void main(String[] args) {ArrayList<Integer> arr = new ArrayList<>();arr.add(20);arr.add(10);arr.add(2);int[] arr2 = arr.stream().mapToInt(p -> p.intValue()).toArray(); //方法1int[] arr3 = arr.stream().mapToInt(Integer :: intValue).toArray(); // 方法2System.out.println(Arrays.toString(arr2));System.out.println(Arrays.toString(arr3));}}

输出结果:

[20, 10, 2]
[20, 10, 2]

原创粉丝点击