List 和 数组 的转换
import org.junit.jupiter.api.Test;
import java.util.*;
public class T {
/*
list 转 数组
toArray()底层是数组的拷贝,生成一个新的数组
和原来的list底层的旧数组,是两个对象。
所以list的改变不会影响toArray()生成的数组
* */
@Test
public void listToArray() {
List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
Integer[] array = list.toArray(new Integer[list.size()]);
list.add(33);
System.out.println("----数组----");
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
System.out.println("----list----");
list.forEach(System.out::println);
/*执行结果:
----数组----
1
2
----list----
1
2
33
* */
}
/*
数组 转 list
底层引用同一个数组对象
* */
@Test
public void arrayToList() {
Integer[] array = {1, 2};
List<Integer> list = Arrays.asList(array);
array[0] = 4;
//异常UnsupportedOperationException:Arrays.asList()不支持数据的添加和删除
//list.add(33);
System.out.println("----数组----");
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
System.out.println("----list----");
list.forEach(System.out::println);
/*
执行结果:
----数组----
4
2
----list----
4
2
* */
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律