牛客网新手入门130_78-80题_20260112

5 阅读2分钟

今日编程知识点总结(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 语句无法执行。