java如何初始化数组
初始化固定长度的数组
在Java中声明并初始化固定长度的数组,可以使用以下语法。数组长度一旦确定不可更改。

// 方法1:声明时指定长度,元素为默认值(如int数组默认0)
int[] arr1 = new int[5];
// 方法2:声明时直接赋初始值
int[] arr2 = new int[]{1, 2, 3, 4, 5};
// 或简化为:
int[] arr3 = {1, 2, 3, 4, 5};
动态初始化数组(使用集合或流)
若需动态生成数组,可通过集合类或Java 8的流API实现。

// 使用ArrayList动态添加元素后转数组
List<Integer> list = new ArrayList<>();
list.add(10);
list.add(20);
Integer[] arr4 = list.toArray(new Integer[0]);
// 使用Stream生成数组(Java 8+)
int[] arr5 = IntStream.range(1, 6).toArray(); // 生成[1, 2, 3, 4, 5]
多维数组初始化
多维数组的初始化语法类似一维数组,可逐层指定或直接赋值。
// 二维数组初始化
int[][] matrix1 = new int[3][3]; // 3x3的默认值矩阵
int[][] matrix2 = {{1, 2}, {3, 4}, {5, 6}}; // 直接赋值
// 不规则多维数组
int[][] jaggedArray = new int[2][];
jaggedArray[0] = new int[]{1, 2};
jaggedArray[1] = new int[]{3, 4, 5};
使用Arrays工具类填充值
通过java.util.Arrays类可快速填充或复制数组。
// 填充默认值
int[] arr6 = new int[5];
Arrays.fill(arr6, 100); // 所有元素设为100
// 复制数组
int[] original = {1, 2, 3};
int[] copy = Arrays.copyOf(original, original.length);
注意事项
- 基本类型数组(如
int[])默认值为0,对象数组(如String[])默认值为null。 - 直接赋值的语法
{}仅适用于声明时,不能用于重新赋值。 - 动态集合转数组时需注意类型匹配,避免
ClassCastException。






