目录

  • 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的几种方式相关推荐

  1. Java 数组转List的四种方式

    Java 数组转List的四种方式 第一种方式(未必最佳):使用ArrayList.asList(strArray) ​ 使用Arrays工具类Arrays.asList(strArray)方式,转换 ...

  2. Java数组转List的三种方式及对比

    前言: 本文介绍Java中数组转为List三种情况的优劣对比,以及应用场景的对比,以及程序员常犯的类型转换错误原因解析. 一.最常见方式(未必最佳) 通过 Arrays.asList(strArray ...

  3. Java 数组转 List 的 4 种方式

    https://blog.csdn.net/qidasheng2012/article/details/115112452 目录 前言 [一]最常见方式(未必最佳) [二]数组转为List后,支持增删 ...

  4. Java 数组元素倒序的三种方式

    将数组元素反转有多种实现方式,这里介绍常见的三种. 直接数组元素对换 @Test public void testReverseSelf() throws Exception {System.out. ...

  5. 转list_你知道Java数组转List的三种方式及对比吗?

    前言: 本文介绍Java中数组转为List三种情况的优劣对比,以及应用场景的对比,以及程序员常犯的类型转换错误原因解析. 一.最常见方式(未必最佳) 通过 Arrays.asList(strArray ...

  6. Java 数组转 List 的三种方式及对比

    来源 | blog.csdn.net/x541211190/article/details/79597236 本文介绍Java中数组转为List三种情况的优劣对比,以及应用场景的对比,以及程序员常犯的 ...

  7. JAVA 数组的输出的三种方式

    定义一个数组: int nums[] = {1,8,6,7,3,5,4}; 第一种:利用Array类中的toString方法 调用Array.toString(a),返回一个包含数组元素的字符串,这些 ...

  8. android double转string_Java 数组转 List 的三种方式及对比

    来源:Java数组转List的三种方式及对比_五道口-CSDN博客 作者:大脑补丁 前言: 本文介绍Java中数组转为List三种情况的优劣对比,以及应用场景的对比,以及程序员常犯的类型转换错误原因解 ...

  9. java 判断数组已经存满_详解Java中数组判断元素存在几种方式比较

    1. 通过将数组转换成List,然后使用List中的contains进行判断其是否存在 public static boolean useList(String[] arr,String contai ...

最新文章

  1. mysql set 子表,mysql update set 更新表数据
  2. 【274天】每日项目总结系列012(2017.11.06)
  3. 通俗理解决策树算法中信息增益的
  4. datetime 索引_【免费毕设】ASP.NET基于Ajax+Lucene构建搜索引擎的设计和实现(源代码+论文)...
  5. mysql 时间类型转化_Mysql 字段类型转化 和 时间类型相关处理
  6. 如何防止盗号 使用windows自带的 屏幕键盘 OSK
  7. 位置变量示例_shell脚本
  8. OS X系统U盘安装的问题
  9. IMDB 电影打分规则
  10. Ubuntu下调用opencv编程显示汉字
  11. ubuntu与windows双系统的启动项丢失
  12. 【修真院PM小课堂】轮播图有几种表现形式,适合什么场景, 有哪些切换方式?
  13. 银海系统服务器登录不上,解决登录问题 - Skype for Business | Microsoft Docs
  14. 【Python画图】不显示x、y坐标
  15. 信号和电源隔离的有效设计技术
  16. 知识付费直播间的实用售课技巧
  17. Element表格出现闪动问题
  18. Python入门笔记,看完直接玩几个小案例是没有问题滴~
  19. 《抓住听众心理——演讲者要知道的100件事》一第 1 章 人们是怎样思考和学习的...
  20. Axis2 中的 JAXB 和 JAX-WS

热门文章

  1. mysql官方文档中文版_手把手教你看MySQL官方文档
  2. 学计算机新学期新目标新计划,新学期新目标新计划作文范文10篇
  3. 在vue中使用video-player
  4. html仿微信语音播放器,原生js仿微信音频播放器
  5. 爆肝2W字梳理50道计算机网络必问面试题
  6. mac iphone ipad 截图六方法汇总
  7. IDEA工具(使用教程与工具美化)
  8. 大端模式和小端模式初探
  9. 尝试从REST API获取数据时,请求的资源上没有“ Access-Control-Allow-Origin”标头
  10. 夏令营导师自荐信计算机专业,保研夏令营自荐信应该如何写?