Java 数组提供了存储同类型元素的有序集合。可以声明一个固定容量的数组并使用数组字面量或 new 语法初始化它。与 ArrayList 相比,数组的容量固定,只能存储相同元素,但在处理大量原始类型时性能更佳。访问数组元素可以通过索引或 foreach 循环。使用二分查找或线性搜索可以查找元素的索引。可以使用 Arrays.copyOf 或 System.arraycopy 复制数组。通过 Arrays.sort 进行排序,而最大值和最小值可以通过 Arrays.stream 的 max 和 m

Java 数组面试题
1. 如何在 Java 中声明和初始化数组?
- 使用以下语法声明一个数组:
int[] arr = new int[size]; - 使用数组字面量初始化数组:
int[] arr = {1, 2, 3};
2. 数组和 ArrayList 之间的区别是什么?
- 容量:数组具有固定容量,而 ArrayList 可以动态增长。
- 元素类型:数组只能存储相同类型的元素,而 ArrayList 可以存储各种对象。
- 性能:在处理大量原始类型值时,数组的性能优于 ArrayList。
3. 如何访问数组中的元素?
立即学习“Java免费学习笔记(深入)”;
- 使用索引:
arr[index] - 使用 foreach 循环访问每个元素:
for (int x : arr)
4. 如何查找数组中元素的索引?
- 使用
Arrays.binarySearch(arr, element)进行二分查找,前提是数组已排序。 - 使用线性搜索:
for (int i = 0; i
5. 如何复制数组?
- 使用
Arrays.copyOf(arr, newLength)复制一个指定长度的数组。 - 使用
System.arraycopy(arr, 0, newArr, 0, arr.length)复制整个数组。
6. 如何对数组进行排序?
- 使用
Arrays.sort(arr)对基本类型进行排序。 - 使用
Arrays.sort(arr, Comparator)对对象进行排序,前提是它们实现了Comparable接口。
7. 如何查找数组中的最大值和最小值?
-
最大值:
Arrays.stream(arr).max().getAsInt() -
最小值:
Arrays.stream(arr).min().getAsInt()











