java 用递归方法返回了一个String,如果得到里面的值sum?

public static String add(int[] a,int sum,String s,int i){
sum=sum+a[i];
if(i==4){
return s+a[i]+"---sum="+sum;
}else{
if(s!=null){
s=s+a[i]+"+";
i++;
return add(a,sum,s,i);
}else{
s=a[i]+"+";
i++;
return add(a,sum,s,i);
}
}
}
public static void main(String[] args) {
int[] a={2,9,66,33,21,1,54,68,73};
int sum=0;
String s=null;
int i=0;
System.out.println(add(a,sum,s,i));
}
}
在上面的递归方法里,返回了一个String,里面可以直接输出sum的值,但是怎么提取出来用呢?例如我要用里面的sum和另一个数比较大小,如果超接返回sum,我是明白的,但现在只能返回一个String的情况下,怎么办呢?
求教各位大神高手…………初学者

1、你这种没必要写递归
2、再写一个方法返回sum或者在这个方法返回的基础上使用substring截取出sum然后转换为你要的类型,比如int什么的就可以比较了。
由于java只能return一个值。追问

上面这题,只是一个例子,我是在做另外一个比较复杂的题,想不明白怎么从String中提取sum,才写了这样一个简单的来提问的

追答

subString方法截取,

温馨提示:答案为网友推荐,仅供参考
相似回答