精通 Java 数组:声明、初始化与操作全攻略
Java 数组
本综合指南带你走遍 Java 数组的方方面面 —— 从声明初始化到高效遍历和实战应用。适合初学者和资深开发者。
数组是存储同类型多个值的连续内存块。
例如,保存 100 人的姓名,需创建可存 100 个名字的字符串数组:
String[] array = new String[100];
注意固定大小:分配后数组永远不能超过 100 个元素。
Java 中声明数组
Java 数组声明语法:
dataType[] arrayName;
- dataType – 基本类型如
int、char、double、byte或引用类型如String或自定义对象。 - arrayName – 有效标识符。
示例:
double[] data;
此处 data 为可存 double 值的数组。
能存多少元素?
通过分配内存确定容量:
// 声明数组
double[] data;
// 分配内存
data = new double[10];
数组大小即 length 现为 10。
常将声明和分配合并:
double[] data = new double[10];
初始化数组
声明时用值列表初始化:
// 声明并初始化
int[] age = {12, 4, 5, 2, 5};
因提供值,Java 推断大小 (此例为 5)。
也可实例化空数组再按索引赋值:
// 声明数组
int[] age = new int[5];
// 赋值
age[0] = 12;
age[1] = 4;
age[2] = 5;
...

关键点:
- 索引从 0 开始。
- 大小为
n时,最后一个元素索引为n-1。
访问元素
用索引检索值:
array[index]
示例程序:
class Main {
public static void main(String[] args) {
int[] age = {12, 4, 5, 2, 5};
System.out.println("访问数组元素:");
System.out.println("第一个元素: " + age[0]);
System.out.println("第二个元素: " + age[1]);
System.out.println("第三个元素: " + age[2]);
System.out.println("第四个元素: " + age[3]);
System.out.println("第五个元素: " + age[4]);
}
}
输出
访问数组元素: 第一个元素: 12 第二个元素: 4 第三个元素: 5 第四个元素: 2 第五个元素: 5
循环可批量处理。
遍历数组
使用经典 for 循环
class Main {
public static void main(String[] args) {
int[] age = {12, 4, 5};
System.out.println("使用 for 循环:");
for (int i = 0; i < age.length; i++) {
System.out.println(age[i]);
}
}
}
输出
使用 for 循环: 12 4 5
length 属性给出数组大小。
使用增强 for 循环
class Main {
public static void main(String[] args) {
int[] age = {12, 4, 5};
System.out.println("使用 for-each 循环:");
for (int a : age) {
System.out.println(a);
}
}
}
输出
使用 for-each 循环: 12 4 5
数组元素求和与平均值
class Main {
public static void main(String[] args) {
int[] numbers = {2, -9, 0, 5, 12, -25, 22, 9, 8, 12};
int sum = 0;
Double average;
for (int number : numbers) {
sum += number;
}
int arrayLength = numbers.length;
average = ((double)sum / (double)arrayLength);
System.out.println("Sum = " + sum);
System.out.println("Average = " + average);
}
}
输出
Sum = 36 Average = 3.6
此例演示增强 for 循环、类型转换和 length 属性。
多维数组
除一维数组,Java 支持多级数组 —— 数组的数组。例如:
double[][] matrix = { {1.2, 4.3, 4.0}, {4.1, -1.1} };
此处 matrix 为二维数组 (矩阵)。详见 Java 多维数组。
推荐阅读
- Java 复制数组
- Java 打印数组程序
- Java 连接两个数组程序
- Java ArrayList 转数组和数组转 ArrayList
- Java 动态数组
java
- 掌握 C# 数组:声明、初始化与核心操作完全指南
- 掌握 C# 锯齿数组:声明、初始化与访问完全指南
- C++ 数组完全指南:声明、初始化、多维数组与指针技巧
- C++ 动态数组分配实战指南:new/delete、初始化、扩容与内存管理
- 精通 Java 运算符:类型、语法与实战示例
- Java 数组复制技术:全面指南
- 精通 Java 接口:概念、实现与最佳实践
- 精通 Java Try-With-Resources:自动资源管理详解
- Java 注解详解:类型、放置位置与实战示例
- Java 数组教程:声明、创建、初始化与示例代码
- Java 对象数组创建:分步指南
- Java 选择排序详解:核心原理、完整代码与步骤演示