Java中数组array和列表list相互转换

在Java中,可以将数组(array)和列表(list)相互转换,但需要注意一些细节和限制。以下是一些示例和说明:

从数组到列表:

  1. 使用Arrays.asList()方法:可以使用Arrays.asList()方法将数组转换为列表。这个方法返回一个List视图,不支持添加或删除元素,只能修改现有元素的值。这是一个固定大小的列表。

    java 复制代码
    String[] array = {"A", "B", "C"};
    List<String> list = Arrays.asList(array);
  2. 使用循环逐个元素添加:您可以遍历数组并逐个元素添加到列表中,这样可以创建一个可修改的列表。

    java 复制代码
    String[] array = {"A", "B", "C"};
    List<String> list = new ArrayList<>(Arrays.asList(array));

从列表到数组:

  1. 使用toArray()方法:可以使用List接口的toArray()方法将列表转换为数组。需要传入一个目标数组,如果目标数组的大小不足以容纳列表中的元素,它将创建一个新数组。

    java 复制代码
    List<String> list = new ArrayList<>();
    list.add("A");
    list.add("B");
    list.add("C");
    
    String[] array = list.toArray(new String[0]);

    注意:传递一个大小为0的目标数组是一种惯用做法,因为它会自动创建正确大小的新数组。

  2. 使用streamtoArray()方法(Java 8及更高版本):可以使用Java 8中引入的streamtoArray()方法来将列表转换为数组。

    java 复制代码
    List<String> list = new ArrayList<>();
    list.add("A");
    list.add("B");
    list.add("C");
    
    String[] array = list.stream().toArray(String[]::new);
相关推荐
Monkey-旭1 小时前
Android Handler 完全指南
android·java·handler
秃狼1 小时前
Execel文档批量替换标签实现方案
java
Brookty1 小时前
Java线程安全与中断机制详解
java·开发语言·后端·学习·java-ee
Sylvia-girl1 小时前
排序查找算法,Map集合,集合的嵌套,Collections工具类
java·算法·排序算法
TT哇1 小时前
【分治】归并排序——排序数组(medium)
java·算法·排序算法
给力学长1 小时前
自习室预约小程序的设计与实现
java·数据库·vue.js·elementui·小程序·uni-app·node.js
试着1 小时前
零基础学习性能测试第五章:JVM性能分析与调优-JVM概念,java程序运行原理
java·jvm·学习·零基础·性能测试
從南走到北2 小时前
JAVA东郊到家按摩服务同款同城家政服务按摩私教茶艺师服务系统小程序+公众号+APP+H5
android·java·开发语言·微信小程序·小程序
雾林小妖2 小时前
springboot集成deepseek
java·spring boot·后端
愿你天黑有灯下雨有伞3 小时前
枚举策略模式实战:优雅消除支付场景的if-else
java·开发语言·策略模式