【问题标题】:How to fix "missing return statement" error in java?如何修复java中的“缺少返回语句”错误?
【发布时间】:2021-08-16 07:40:48
【问题描述】:

我正在尝试编写一个代码来检查我的跑步者,以确定数字是否通过 for 循环为素数。据我所知,我的跑步者很好,但我到底应该回到这里做什么?我尝试过布尔值、null、""、int 甚至双精度值。

public class Prime
{
    public static boolean isPrime( int num )
   {
        for(int i = 2; i<= num/2; i++)
      {
         if(num % i == 0)
         System.out.println(num + " is prime.");
         System.out.println(num + " is not prime.");   
      }
      
         // missing return statement error given here
      
   }
}


【问题讨论】:

  • 错误,添加缺少的return 语句?或者如果你不想要,将方法更改为void
  • 你的代码写错了,请检查!
  • @AshishMishra '错误更正'在术语上是矛盾的。解释你自己。
  • 你声明了返回布尔值的方法,但是你没有返回语句来返回这个布尔值。
  • @user207421 我的意思是这段代码会严重失败并且会返回真,就像它检查大于 2 的偶数一样,即 4,6,8,10 将变为 Prime 并且其他奇数将变为 Non -肯定是错误的素数

标签: java compiler-errors return


【解决方案1】:

你需要返回布尔值

public static boolean isPrime(int num) {
    for (int i = 2; i <= num / 2; i++) {
        if (num % i == 0) {
            return true;
        }
    }
    return false;
}

【讨论】:

  • 代码实际上不能正常工作,但这是 OP 的错,不是你的 ;-)
  • 是的,但是,因为我认为问题的重点是没有“回报”
  • 我完全同意。这是他的问题。
猜你喜欢
  • 2014-01-09
  • 1970-01-01
  • 2013-09-18
  • 1970-01-01
  • 1970-01-01
  • 2013-03-21
  • 2016-01-04
  • 2014-08-20
  • 2013-04-27
相关资源
最近更新 更多