【问题标题】:Why won't my return statement work? [closed]为什么我的退货声明不起作用? [关闭]
【发布时间】:2015-09-30 08:46:14
【问题描述】:

我试图让它返回一个值。我想要的是它返回在程序的其他部分自动生成的一堆数字的总和。

   public static double totalAmount(double probability, int numOfSuccesses){
      for (int i = 0; i < numOfSuccesses; i++){
         double total= 0;
         total += probability;
      }
   }
   return total;

当我这样做时,我得到:

binomialDistribution.java:37: error: illegal start of type
   return total;

【问题讨论】:

  • 它在方法体之外......
  • 当您向该函数发送单个数字时,您希望如何获得“一堆数字的总和”?

标签: java for-loop return return-value probability


【解决方案1】:

你的函数只计算一个简单的乘法:

public static double totalAmount(double probability, int numOfSuccesses) {
    return probability * numOfSuccesses;
}

嗯,稍微复杂一点。

【讨论】:

  • OP 没有要求替代方案,他/她问为什么代码不起作用!
  • 其实是一个间接的答案:代码越小,返回错误和变量初始化错误的概率越低。 ;-)
【解决方案2】:

您的示例中有两个错误:return 语句超出了函数范围,total 声明在循环内。

应该是这样的:

public static double totalAmount(double probability, int numOfSuccesses){
    double total= 0;
    for (int i = 0; i < numOfSuccesses; i++){
        total += probability;
    }
    return total;
}

【讨论】:

    猜你喜欢
    • 2017-04-06
    • 1970-01-01
    • 2014-08-21
    • 2013-07-13
    • 2021-09-01
    • 2015-04-28
    • 2016-12-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多