在Java中使用循环返回double

时间:2012-10-26 01:37:51

标签: java loops for-loop return

我试图从一个简单的for循环中返回一个double。出于某种原因,我不断收到一条错误消息,指出该方法缺少一个return语句。

这是我的代码:

public static double quantitytable(){

    for(double x=1; x<=1000; x=x+100){    
           return x;
    }

}

3 个答案:

答案 0 :(得分:5)

你的循环没有意义:一旦你返回,循环就结束了。从本质上讲,您的计划等同于:

public static double quantitytable(){
    return 1;
}

如果要从方法返回多个项目,请返回数组或Java集合:

public static List<Double> quantitytable() {
    List<Double> res = new ArrayList<Double>();
    for(double x=1 ; x<=1000 ; x += 100) {
       res.add(x);
    }
    return res;
}

答案 1 :(得分:2)

在Java中,每个代码路径都必须返回一个值。编译器并不试图证明for循环在所有情况下都会返回(即使我们可以告诉它),因此它认为控制可以超过for循环的结束(因此它需要一个return循环后的for语句。

答案 2 :(得分:1)

您的代码将立即返回,您知道。而它在第一次迭代中

double x=1 
      for(; x<=1000; x+=100){    
               return x;}

    }