java数组转List的几种方式
目录
- java数组转List的几种方式
- 方式一:Arrays.asList();
- 方式二:new ArrayList<>(Arrays.asList())
- 方式三:Collections.addAll()
- 方式四:通过JDK8的Stream流
java数组转List的几种方式
方式一:Arrays.asList();
- 缺点:不可新增、删除元素。如上图remove()操作后,会报下图中的错误。
- 报错原因:Arrays.asList(strArr)返回值是java.util.Arrays类中一个私有静态内部类
java.util.Arrays.Arraylist,并不是我们平时用的java.util.ArrayList()。
java.util.Arrays.ArrayList类具有 set(),get(),contains()等方法,但是不具有添加add()或删除remove()方法。 - 使用场景:将数组转换为List后,不需要增删其中的值,仅作为数据源读取使用。
方式二:new ArrayList<>(Arrays.asList())
- 优点:支持增删改操作
- 使用场景:需要在将数组转换为List后,对List进行增删改操作,适合List的数据量不大的情况。
方式三:Collections.addAll()
根据数组的长度创建一个长度相同的List,然后通过Collections.addAll()方法,将数组中的元素转为二进制,然后添加到List中。
ArrayList< String> arrayList = new ArrayList<String>(strArr.length);
Collections.addAll(arrayList, strArr);
- 优点:高效
- 使用场景:需要在将数组转换为List后,对List进行增删改查操作,适合List的数据量大的情况,可以提高操作速度。
方式四:通过JDK8的Stream流
仅支持int[]、long[]、double[],不支持short[ ]、byte[ ]、char[]。
int[] ints = {1, 2, 3};
Arrays.stream(ints).boxed().collect(Collectors.toList());long[] longs = {1, 2, 3};
Arrays.stream(longs ).boxed().collect(Collectors.toList());double[] doubles = {1, 2, 3};
Arrays.stream(doubles).boxed().collect(Collectors.toList());
同样的引用类型也可以使用这种方式:
Integer[] cardNumberArray = {0, 1, 2, 3};
List<Integer> collect = Arrays.stream(cardNumberArray).collect(Collectors.toList());
引用类型与基础类型相比 少了 boxed 这一过程,是一个转包装类的过程。
java数组转List的几种方式相关推荐
- Java 数组转List的四种方式
Java 数组转List的四种方式 第一种方式(未必最佳):使用ArrayList.asList(strArray) 使用Arrays工具类Arrays.asList(strArray)方式,转换 ...
- Java数组转List的三种方式及对比
前言: 本文介绍Java中数组转为List三种情况的优劣对比,以及应用场景的对比,以及程序员常犯的类型转换错误原因解析. 一.最常见方式(未必最佳) 通过 Arrays.asList(strArray ...
- Java 数组转 List 的 4 种方式
https://blog.csdn.net/qidasheng2012/article/details/115112452 目录 前言 [一]最常见方式(未必最佳) [二]数组转为List后,支持增删 ...
- Java 数组元素倒序的三种方式
将数组元素反转有多种实现方式,这里介绍常见的三种. 直接数组元素对换 @Test public void testReverseSelf() throws Exception {System.out. ...
- 转list_你知道Java数组转List的三种方式及对比吗?
前言: 本文介绍Java中数组转为List三种情况的优劣对比,以及应用场景的对比,以及程序员常犯的类型转换错误原因解析. 一.最常见方式(未必最佳) 通过 Arrays.asList(strArray ...
- Java 数组转 List 的三种方式及对比
来源 | blog.csdn.net/x541211190/article/details/79597236 本文介绍Java中数组转为List三种情况的优劣对比,以及应用场景的对比,以及程序员常犯的 ...
- JAVA 数组的输出的三种方式
定义一个数组: int nums[] = {1,8,6,7,3,5,4}; 第一种:利用Array类中的toString方法 调用Array.toString(a),返回一个包含数组元素的字符串,这些 ...
- android double转string_Java 数组转 List 的三种方式及对比
来源:Java数组转List的三种方式及对比_五道口-CSDN博客 作者:大脑补丁 前言: 本文介绍Java中数组转为List三种情况的优劣对比,以及应用场景的对比,以及程序员常犯的类型转换错误原因解 ...
- java 判断数组已经存满_详解Java中数组判断元素存在几种方式比较
1. 通过将数组转换成List,然后使用List中的contains进行判断其是否存在 public static boolean useList(String[] arr,String contai ...
最新文章
- mysql set 子表,mysql update set 更新表数据
- 【274天】每日项目总结系列012(2017.11.06)
- 通俗理解决策树算法中信息增益的
- datetime 索引_【免费毕设】ASP.NET基于Ajax+Lucene构建搜索引擎的设计和实现(源代码+论文)...
- mysql 时间类型转化_Mysql 字段类型转化 和 时间类型相关处理
- 如何防止盗号 使用windows自带的 屏幕键盘 OSK
- 位置变量示例_shell脚本
- OS X系统U盘安装的问题
- IMDB 电影打分规则
- Ubuntu下调用opencv编程显示汉字
- ubuntu与windows双系统的启动项丢失
- 【修真院PM小课堂】轮播图有几种表现形式,适合什么场景, 有哪些切换方式?
- 银海系统服务器登录不上,解决登录问题 - Skype for Business | Microsoft Docs
- 【Python画图】不显示x、y坐标
- 信号和电源隔离的有效设计技术
- 知识付费直播间的实用售课技巧
- Element表格出现闪动问题
- Python入门笔记,看完直接玩几个小案例是没有问题滴~
- 《抓住听众心理——演讲者要知道的100件事》一第 1 章 人们是怎样思考和学习的...
- Axis2 中的 JAXB 和 JAX-WS
热门文章
- mysql官方文档中文版_手把手教你看MySQL官方文档
- 学计算机新学期新目标新计划,新学期新目标新计划作文范文10篇
- 在vue中使用video-player
- html仿微信语音播放器,原生js仿微信音频播放器
- 爆肝2W字梳理50道计算机网络必问面试题
- mac iphone ipad 截图六方法汇总
- IDEA工具(使用教程与工具美化)
- 大端模式和小端模式初探
- 尝试从REST API获取数据时,请求的资源上没有“ Access-Control-Allow-Origin”标头
- 夏令营导师自荐信计算机专业,保研夏令营自荐信应该如何写?