Java中列表递归调用并做修改
在Java中,可以使用递归来遍历和修改列表。下面是一个示例代码,演示了如何递归调用并修改列表。
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
System.out.println("原始列表:" + list);
modifyList(list);
System.out.println("修改后的列表:" + list);
}
private static void modifyList(List<Integer> list) {
if (list.isEmpty()) {
return;
}
// 修改当前元素
int currentValue = list.get(0);
list.set(0, currentValue * 10);
// 递归调用修改剩余元素
List<Integer> remainingList = list.subList(1, list.size());
modifyList(remainingList);
}
}
上述代码中,我们定义了一个modifyList
方法,该方法递归地调用自己来修改列表的元素。首先,我们修改列表中的第一个元素,将其乘以10。然后,我们使用subList
方法获取剩余元素的子列表,并将其传递给递归调用的modifyList
方法。递归调用将继续修改剩余元素,直到列表为空为止。
运行上述代码,将输出以下结果:
原始列表:[1, 2, 3]
修改后的列表:[10, 20, 30]
可以看到,列表中的元素已经被成功地修改了。请注意,在使用递归修改列表时,确保设置递归终止条件,以避免无限递归。在上述示例中,我们使用了列表是否为空作为终止条件。

原文地址: http://www.cveoy.top/t/topic/i18y 著作权归作者所有。请勿转载和采集!