arraylist通过get()和set()方法获取和修改指定索引元素,均要求索引满足0 ≤ index
在 Java 中,
ArrayList获取和修改指定索引位置的元素,主要通过get(int index)和set(int index, E element)两个方法实现。它们都要求索引在合法范围内(0 ≤ index ),否则抛出 <code>IndexOutOfBoundsException。获取指定索引的元素(get)
使用
get(int index)方法可直接读取对应位置的元素:示例:
- 索引从 0 开始,最大有效索引是
list.size() - 1- 返回值类型为泛型
E,与 ArrayList 声明的类型一致- 不改变原列表结构或内容
ArrayList<string> list = new ArrayList(Arrays.asList("a", "b", "c"));<br>String item = list.get(1); // 返回 "b"</string>修改指定索引的元素(set)
set(int index, E element)会用新元素替换旧元素,并返回被替换的原始元素:示例:
- 原位置必须已存在元素(即索引不能等于当前 size)
- 不会扩容,也不能用于“添加”——想在末尾加元素请用
add(E)- 返回值是被覆盖的旧元素,可用于记录或判断
String old = list.set(0, "x"); // old = "a",list 变为 ["x", "b", "c"]安全访问前的常见检查
避免运行时异常,建议操作前校验索引有效性:
- 检查
index >= 0 && index- 对 null 输入或空列表做防御性判断
- 批量操作时可用增强 for 或迭代器替代随机索引访问,提升可读性与安全性
注意 set 不能越界添加
set()不同于add(int index, E element):
set(5, "x")在 size=3 的列表上会报错- 若需在指定位置插入并移动后续元素,应使用
add(int index, E element)- 若需扩展列表并在末尾设值,先
add(null)占位再set(),但通常不推荐这种写法
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南












