Java数组入门:简单实用的数据存储方式
数组是Java中最基本的数据结构,用来存放一组相同类型的数据。对于初学者来说,掌握数组的使用非常重要,因为它在实际编程中经常被用到。
什么是数组?
想象一下你有一个装鸡蛋的盒子,这个盒子有多个位置,每个位置只能放一个鸡蛋。Java数组就是这样一种"盒子",可以存放多个相同类型的数据。
数组有两个主要特点:
- 长度固定,创建后就不能改变大小
- 所有元素必须是同一种数据类型
如何使用数组?
创建数组
创建数组有几种简单的方法:
// 方法1:直接指定元素
int[] scores = {90, 85, 78, 92, 88};
// 方法2:先创建空数组再赋值
int[] numbers = new int[3];
numbers[0] = 10;
numbers[1] = 20;
numbers[2] = 30;
访问数组元素
数组的位置从0开始计数,第一个元素是0号位置:
System.out.println(scores[0]); // 输出第一个成绩:90
System.out.println(scores[2]); // 输出第三个成绩:78
// 修改数组元素
scores[1] = 95; // 把第二个成绩改为95
获取数组长度
使用.length可以知道数组有多长:
int count = scores.length; // 结果是5,因为有5个成绩
遍历数组的简单方法
想要处理数组中的每个元素,可以使用循环:
// 使用普通for循环
for (int i = 0; i < scores.length; i++) {
System.out.println("第" + (i+1) + "个成绩:" + scores[i]);
}
// 或者使用更简洁的for-each循环
for (int score : scores) {
System.out.println("成绩:" + score);
}
二维数组
二维数组就像是一个表格,有行和列:
// 创建一个3行2列的数组
int[][] table = {
{1, 2},
{3, 4},
{5, 6}
};
// 访问第二行第一列的元素
System.out.println(table[1][0]); // 输出3
数组的常用操作
Java提供了一些方便的方法来处理数组:
import java.util.Arrays;
// 排序
int[] numbers = {5, 3, 8, 1, 2};
Arrays.sort(numbers); // 变成 [1, 2, 3, 5, 8]
// 比较两个数组是否相同
boolean isEqual = Arrays.equals(numbers1, numbers2);
// 将数组转换成字符串方便打印
String arrayStr = Arrays.toString(numbers);
需要注意的问题
使用数组时可能会遇到两个常见错误:
-
数组越界:访问不存在的索引位置
int[] arr = new int[3]; arr[3] = 10; // 错误!最大索引只能是2 -
空指针异常:数组没有初始化就使用
int[] arr; System.out.println(arr[0]); // 错误!arr还没有初始化
实际应用例子
数组在日常编程中很实用,比如:
// 计算平均分
public static double getAverage(int[] scores) {
int sum = 0;
for (int score : scores) {
sum += score;
}
return (double) sum / scores.length;
}
// 查找最高分
public static int findMax(int[] scores) {
int max = scores[0];
for (int i = 1; i < scores.length; i++) {
if (scores[i] > max) {
max = scores[i];
}
}
return max;
}
总结
数组是Java中存储一组数据的简单有效方式。虽然它的大小不能改变,但在很多情况下已经足够使用。对于需要动态调整大小的场景,可以考虑使用ArrayList,但数组仍然是学习更复杂数据结构的基础。
掌握了数组的基本用法,你就有了处理批量数据的能力,这是编程中的一项重要技能。