java如何给数组赋值
数组赋值方法
在Java中,可以通过多种方式为数组赋值,具体取决于数组的类型(基本类型或对象类型)以及赋值的需求(初始化时赋值或后续修改元素值)。
初始化时直接赋值
对于基本类型数组或对象数组,可以在声明时直接使用花括号 {} 进行赋值。

// 基本类型数组(如int)
int[] intArray = {1, 2, 3, 4, 5};
// 对象类型数组(如String)
String[] stringArray = {"A", "B", "C", "D"};
动态分配空间后赋值
如果数组长度已知但初始值未定,可以先分配空间,再通过索引逐个赋值。
// 分配长度为5的int数组
int[] dynamicArray = new int[5];
// 通过索引赋值
dynamicArray[0] = 10;
dynamicArray[1] = 20;
dynamicArray[2] = 30;
使用循环批量赋值
对于需要批量赋值的场景(如填充相同值或按规律生成值),可以使用循环结构。

// 填充相同值
int[] filledArray = new int[5];
for (int i = 0; i < filledArray.length; i++) {
filledArray[i] = 100; // 所有元素赋值为100
}
// 按规律生成值(如递增序列)
int[] sequenceArray = new int[5];
for (int i = 0; i < sequenceArray.length; i++) {
sequenceArray[i] = i * 2; // 0, 2, 4, 6, 8
}
使用工具类赋值
Java提供了一些工具类(如 Arrays)来简化数组操作,包括批量赋值。
import java.util.Arrays;
// 填充相同值
int[] array = new int[5];
Arrays.fill(array, 42); // 所有元素赋值为42
// 复制其他数组的值
int[] source = {1, 2, 3};
int[] target = new int[3];
System.arraycopy(source, 0, target, 0, source.length); // target变为{1, 2, 3}
多维数组赋值
多维数组(如二维数组)可以通过嵌套花括号或逐层索引赋值。
// 直接初始化
int[][] matrix = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
// 动态赋值
int[][] dynamicMatrix = new int[2][3];
dynamicMatrix[0][0] = 1;
dynamicMatrix[0][1] = 2;
dynamicMatrix[1][2] = 6;
注意事项
- 数组索引从
0开始,最大索引为length - 1,越界访问会抛出ArrayIndexOutOfBoundsException。 - 对象数组的每个元素需要单独实例化,否则默认值为
null。 - 基本类型数组的默认值:
int/short/byte/long:0float/double:0.0char:\u0000boolean:false。






