日期:2014-05-20  浏览次数:20963 次

关于用递归求list的和的问题
	public static int getRecursionSum(List<Integer> list){
return list.get(list.size()-1)+getRecursionSum(list.subList(0, list.size()-1));
}

运行时报“数组下标越界”错误:java.lang.IndexOutOfBoundsException: Index: -1, Size: 0

请问应该怎么改这个错误呢?

注意要用递归方法的哦。
------解决方案--------------------
你这个的递归没有终止条件,肯定错误啦

public static int getRecursionSum(List<Integer> list){ 
    if(0 == list.size()) return 0;
    return list.get(list.size()-1)+getRecursionSum(list.subList(0, list.size()-1)); }