public class q3 {    public static void main(String[] args) {
     String[] ms = {asd,dgg,dfg};
     int m = sumArray(ms);
     System.out.println(m);
    }
    private static int sumArray(String[] a){
     int res = 0;
     res = sumArrayRecur(a , 0);
     return res;    }
    private static int sumArrayRecur(String[] a , int index){
     int sum = 0;
     if(index == a.length-1){     sum = a[index].length;
     }
     else{
     sum = a[index].length + sumArrayRecur(a , index+1);     }
return sum;
    }
}
上面这个程序是为了求列阵中所有的String的长度和,但是不知道哪里错了!

解决方案 »

  1.   

    public class q3 {   public static void main(String[] args) {
      String[] ms = {"asd","dgg","dfg"};
      int m = sumArray(ms);
      System.out.println(m);
      }
      private static int sumArray(String[] a){
      int res = 0;
      res = sumArrayRecur(a , 0);
      return res;   }
      private static int sumArrayRecur(String[] a , int index){
      int sum = 0;
      if(index == a.length-1){   sum = a[index].length();
      }
      else{
      sum = a[index].length() + sumArrayRecur(a , index+1);   }
    return sum;
      }
    }
      

  2.   

    通過join方法可以把數組拼接成字符串,然後直接取length不就可以了麼?不需要這麼繁瑣阿
      

  3.   

    问题一:String[] ms = {asd,dgg,dfg};
    参数不是字符串,应该改成:
    String[] ms = {"asd","dgg","dfg"};问题二:sum = a[index].length;
    字符串的长度应该这样取:
    sum = a[index].length();
      

  4.   

    请问在列阵中求length时什么情况下要加括号,什么情况下不加括号,我是菜鸟中的菜鸟,请帮助!
      

  5.   

    数组长度是 length
    字符串长度是 length()