如何修改ArrayList中数组的元素?附Java示例代码
修改ArrayList中数组元素的方法
嘿,我来帮你搞定这个问题——修改ArrayList<String[]>里的数组元素其实很简单,因为ArrayList存储的是数组的引用,不管是改数组里的单个元素,还是替换整个数组,都有直接的办法,下面给你详细演示:
1. 修改数组里的单个元素
你只需要先通过arr.get(i)拿到ArrayList对应索引的数组,然后直接操作这个数组的元素就行。因为数组是引用类型,你对它做的修改会直接同步到ArrayList里的数组上,不用额外调用其他方法。
我把你的代码补全并加上修改示例:
import java.util.*; public class question { public static void main(String[] args) { ArrayList<String[]> arr = new ArrayList<String[]>(); String[] b = {"red", "green", "blue"}; String[] c = {"banana", "apple", "orange"}; String[] d = {"car", "motorcycle", "airplane"}; String[] s = {"a","b","c"}; arr.add(b); arr.add(c); arr.add(d); arr.add(s); // 👇 这里是修改单个元素的示例 // 把第一个数组(索引0)的第二个元素改成"dark green" arr.get(0)[1] = "dark green"; // 把第二个数组(索引1)的第一个元素改成"pineapple" arr.get(1)[0] = "pineapple"; // 遍历输出验证修改结果 for(int i=0; i<arr.size();i++){ // 遍历当前数组的所有元素 for(String item : arr.get(i)){ System.out.print(item + " "); } System.out.println(); // 每个数组输出完换行 } } }
运行这段代码,输出会是:
red dark green blue pineapple apple orange car motorcycle airplane a b c
2. 替换ArrayList中的整个数组
如果你想把ArrayList里的某一个数组完全换成新的,直接用arr.set(index, newArray)方法就行,它会把对应索引位置的数组引用替换成新的数组。
比如,我们把第三个数组(索引2)换成一个新的交通工具数组:
// 👇 替换整个数组的示例 String[] newTransport = {"bicycle", "train", "ship"}; arr.set(2, newTransport);
加上这段代码后,遍历输出的第三行就会变成:bicycle train ship
小提醒
- 因为
String[]是可变数组,所以直接修改元素就生效;如果是不可变的数组类型,那才需要替换整个数组,但日常用的普通数组都是可变的,不用操心这个。 - 你的原代码里
System.out.println(arr.get(i...没写完,我帮你补成了遍历每个数组元素的逻辑,这样能清楚看到修改后的结果~
内容的提问来源于stack exchange,提问作者Sienna
相关产品推荐
相关产品推荐

