java一维数组遍历有普通for循环和增强for两种方式:前者适用于需下标操作的场景,后者简洁但无法获取索引;实际应用中须注意空数组/null判空、整数溢出、浮点精度及增强for不能修改原数组元素。

Java 中一维数组的遍历是数据分析的基础操作,掌握高效、清晰的遍历方式,能快速支撑求和、计数、极值、平均值等常见统计需求。
基础遍历方式:for 循环与增强 for
两种写法各有适用场景:
- 普通 for 循环:适合需要下标参与计算的场景(如统计偶数索引位置的元素和、查找首次出现位置);
- 增强 for(for-each):代码简洁,适用于纯元素访问(如累加、找最大值),但无法直接获取当前索引。
示例:对 int[] data = {3, 7, 2, 9, 1, 8} 求和
// 普通 for int sum1 = 0; for (int i = 0; i <h3>常用统计功能实现要点</h3> <p>多数统计逻辑可在一次遍历中完成,避免重复循环提升效率:</p>
-
最大值/最小值:初始化为
data[0]或Integer.MIN_VALUE/MAX_VALUE,逐个比较更新; -
平均值:先求和再除以长度,注意用
double类型接收结果,防止整数截断; -
计数类统计(如大于阈值的个数、偶数个数):定义计数器,满足条件时
count++; -
存在性判断(如是否含负数):用布尔变量标记,找到即设为
true并可提前break。
结合实际业务的小型统计工具封装
将常用逻辑封装为静态方法,提高复用性与可读性:
public class ArrayStats {
public static double average(int[] arr) {
if (arr == null || arr.length == 0) return 0.0;
int sum = 0;
for (int x : arr) sum += x;
return (double) sum / arr.length;
}
public static int countAbove(int[] arr, int threshold) {
if (arr == null) return 0;
int count = 0;
for (int x : arr) {
if (x > threshold) count++;
}
return count;
}
}
调用示例:ArrayStats.average(data)、ArrayStats.countAbove(data, 5)。
注意事项与易错点
- 空数组或
null输入必须判空,否则抛NullPointerException或ArrayIndexOutOfBoundsException; - 整数溢出风险:大数组求和建议用
long累加器; - 浮点精度问题:对精度要求高的统计(如金融场景),不建议用
double做累计,应改用BigDecimal; - 增强 for 不可用于修改原数组元素值(如
num = 10只改变副本),需用普通 for + 下标赋值。
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











