javalist集合转换数组_集合对象转数组

javalist集合转换数组_集合对象转数组问题描述:对于给定的如下数组,如何转换成List集合?String[]array={"a","b","c"};参考stackoverflow总结如下几种写法:1.使用原生方式,拆分数组,添加到ListList<String>resultList=newArrayList<>(array.length);for(Strings:ar…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

问题描述:对于给定的如下数组,如何转换成List集合?

String[] array = {"a","b","c"};

参考stackoverflow总结如下几种写法:

1.使用原生方式,拆分数组,添加到List

List<String> resultList = new ArrayList<>(array.length);
for (String s : array) {
    resultList.add(s);
}

2.使用Arrays.asList()

List<String> resultList= new ArrayList<>(Arrays.asList(array));
  • 注意:调用Arrays.asList()时,其返回值类型是ArrayList,但此ArrayListArray的内部类,调用add()时,会报错:java.lang.UnsupportedOperationException,并且结果会因为array的某个值的改变而改变,故需要再次构造一个新的ArrayList

3.使用Collections.addAll()

List<String> resultList = new ArrayList<>(array.length);
Collections.addAll(resultList,array);

4.使用List.of()

  • 此方法为 Java9新增方法,定义在List接口内,并且为静态方法,故可以由类名直接调用。
List<String> resultList = List.of(array);

原链接:https://stackoverflow.com/questions/157944/create-arraylist-from-array

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/172285.html原文链接:https://javaforall.net

(0)
上一篇 2022年8月23日 下午3:00
下一篇 2022年8月23日 下午3:00


相关推荐

  • 关于内存地址的一些理解

    关于内存地址的一些理解首先 必须要知道内存地址只是一个编号 如 1000H 代表一个内存空间 在计算机中存储器的容量是以字节为基本单位的 也就是说一个内存地址代表一个字节 8bit 的存储空间 例如经常说 32 位的操作系统最多支持 4GB 的内存空间 也就是说 CPU 只能寻址 2 的 32 次方 4GB 注意这里的 4GB 是以 Byte 为单位的 不是 bit 也就是说有 4G 4 1024M Byte 4 1024 1024Kb Byt

    2026年3月17日
    1
  • 深入理解HandlerThread

    深入理解HandlerThread以往遇到HandlerThread,对它的认识只是停留在MessageLooperHandler上,知道它有自己的消息队列,仅此而已。随着编程的深入,个人已不再满足表面上的理解,所以再次翻开HandlerThread源码,做梳理记录。HandlerThread集成Thread,并重写了Thread类的run方法(如果我们自定义一个类继承HandlerThread,就用不到run函数了):

    2022年7月12日
    23
  • java CAS详解[通俗易懂]

    java CAS详解[通俗易懂]CAS解释:CAS(compareandswap),比较并交换。可以解决多线程并行情况下使用锁造成性能损耗的一种机制.CAS操作包含三个操作数—内存位置(V)、预期原值(A)和新值(B)。如果内存位置的值与预期原值相匹配,那么处理器会自动将该位置值更新为新值。否则,处理器不做任何操作。一个线程从主内存中得到num值,并对num进行操作,写入值的时候,线程会把第一次取到的num值和主内存中num值进行比较,如果相等,就会将改变后的num写入主内存,如果不相等,则一直循环对比,知道成功为止。CAS

    2022年7月9日
    28
  • cocos2d-x3.x屏蔽遮罩层屏蔽触摸button

    cocos2d-x3.x屏蔽遮罩层屏蔽触摸button

    2022年1月10日
    49
  • Win32gui 无效窗口句柄

    Win32gui 无效窗口句柄在用模拟浏览器上传文件时 用 win32gui 查找窗口 并输入文件路径 点击确定上传 然而在设置打开窗口焦点时 报错了 xx 是无效窗口句柄经过 spy 排查 确定窗口类和名称都无误 后来经过多次测试 发现问题是 窗口打开太慢 在窗口打开之前就开始查找窗口了 当然就找不到了 所以要等一等 一秒也行 time sleep 1 部分 python 代码片段如下 ele file click

    2026年3月26日
    3
  • android declare-styleable 和style,Android 关于declare-styleable属性的写法….

    android declare-styleable 和style,Android 关于declare-styleable属性的写法….我想问自定义View的时候,以下这段代码,为何要写两次一样的名称呢?我看了一些资料,说写在declare-styleable系统会自动生成数组…..我不太明白这实际应用是什么?如果说自动帮你生成了数组,方便使用,那写在外面的三个又有什么作用?能从实际应用中讲一讲吗?<?xmlversion=”1.0″encoding=”utf-8″?><resources><at…

    2022年7月13日
    17

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号