今日编程知识点总结(Java 数组 / 集合篇)
一、核心语法与数据结构
1. 数组(Array)核心注意点
- 索引规则:Java 数组索引从 0 开始,最大索引为 数组长度-1,超出则触发 ArrayIndexOutOfBoundsException 运行时异常;
- 异常影响:该异常会直接终止方法执行,后续代码(如 return 语句)无法执行,导致无返回结果;
- 长度特性:数组长度通过 数组名.length 获取,且长度固定,无法动态扩容。
2. ArrayList 基础使用
- 初始化:ArrayList list = new ArrayList<>();(泛型指定元素类型);
-
- 添加元素:list.add(元素)(按顺序添加,支持动态扩容);
-
- 方法返回:可直接返回 ArrayList 类型,满足方法返回值要求;
- 适用场景:需要动态存储数据、方法需返回多个同类型结果时,优先使用 ArrayList 而非数组。
二、异常处理关键认知
- 运行时异常:如数组越界异常无需手动捕获,触发后 JVM 立即中断当前方法;
- 调试技巧:通过 System.out.println 打印数组长度、循环索引值,可快速定位越界问题;
- 容错处理:可通过 try-catch 捕获数组越界异常,避免程序直接崩溃,示例:
try {
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println("索引越界:" + e.getMessage());
return 0;
}
三、代码规范与调试
- 变量可读性:提取数组索引值为单独变量(如 int x1 = vector1[0]),提升代码可维护性;
- 循环边界:遍历数组时,循环终止条件需严格匹配数组长度,避免因逻辑错误导致索引越界;
- 测试验证:编写 main 方法模拟入参测试,快速验证方法逻辑和异常场景。
四、小技巧
- ArrayList 相比数组更灵活,无需提前指定长度,适合作为方法返回值传递多结果;
- 数组遍历前,先打印 数组名.length 确认长度,可提前规避越界风险;
- 运行时异常无返回结果的核心原因:异常触发后方法执行中断,return 语句无法执行。