Java 9数组转换为List

Java 9使用List.of

在Java 9,List新增了of()的工厂方法用来产生不可变的列表。

返回一个空列表

List list = List.of();

多个元素生成列表

List<Integer> list = List.of(1,2,3,4,5);

数组转换为列表

Integer[] array = {1,2,3,4};
List<Integer> list = List.of(array);

如果是列表的元素为数组怎么办呢?

Integer[] array = {1,2,3,4};
List<Integer[]> list = List<Integer[]>.of(array);

当显式声明List装载的类型为数组类型,如Integer[],of()方法就会把只有一个参数的数组作为列表的第一个元素。

注意:List.of()返回的是一个不可变的列表。

Java 8以及之前的版本Arrays.asList();

Integer[] array = {1,2,3,4};
List<Integer> list = Arrays.asList(array);

需要注意的是Arrays.asList()返回的List是不可以使用修改的相关方法,如add()。

如果需要转换为ArrayList:

ArrayList<Integer> list = new ArrayList(Arrays.asList(array));

这是的ArrayList才可以做操作。

版权声明:著作权归作者所有。

相关推荐

Java 9的Process和ProcessHandler

Java 9给Process API引入了多种改进,其中新增了ProcessHandler类,它提供了进程相关的信息,如pid,父进程,子进程,进程开始时间以及累计cpu时间等。这里使用Java 9的jshell简单演示下Process的使用:jshell> Process p = new ProcessBuil

Java8使用Lambda把List转换为Map

使用Java8的Collections可以很简便地把List转换为Map以User为例List里的User名字唯一Map<String, User> result =     users.stream().collect(Collectors.toMap(User::getName,   &nbs

TypeScript:字符串转换为数字

在TypeScript,String转换为Number有以下方式:Number构造函数(推荐)let n = Number('1234') // 1234 let nan = Number('abcd') // NaN +号操作符let n = +'1234' 

配置Eclipse使用Java9

Oxygen 4.7.1aEclipse Oxygen 4.7.1a已经支持Java 9启动,以及支持Java 9的开发,直接安装Eclipse Oxygen 4.7.1a即可,不需要特别的配置。但运行可能会出现一些环境问题,也可以按以下配置eclipse.ini指定Java 9的vm-vm C:\Program&nb

Java 9:List.of()与Arrays.asList()的区别

Java 9新增了List.of的集合工程方法。它与Arrays.asList区别如下:1、Arrays.asList返回的是可变的列表,而List.of返回的是不可变的列表List<Integer> list = Arrays.asList(1, 2, null); list.set(3, 3); //&

Java 9:改进的Try-With-Resources

Java 7之前在Java 7之前,在使用一些资源的类时,如BufferedReader,我们要常常提醒自己,必须要在finally块关闭资源。Java 6示例BufferedReader br = null; try {   br = new BufferedReader(ne