ArrayList 和 int数组 的转化

今天在力扣刷题时遇到一道题需要输出int数组,但是数组大小未知,因此解题时需要一个可变数组ArrayList。然而直接使用ArrayList的toArray()方法会报错,提示无法将Object[]转为int[]。查看文档后发现toArray()方法输出结果为一个对象,无法直接转换为基本数据类型。如果需要转为int数组的话,可以通过以下2种方法实现。

1. 创建新数组并对其遍历赋值

List<Integer> temp = new ArrayList<>();
int[] result = new int[temp.size()]; 
for (int i = 0; i < temp.size(); i++) {
	result[i] = temp.get(i);
}

2、使用Stream流转换

List<Integer> result = new ArrayList<>();
int[] array = result.stream().mapToInt(Integer::intValue).toArray();

你可能感兴趣的:(leetcode,java)