prime方法并非所有条件都会返回其声明要返回的boolean值,所以编译器会抗议:m<0时也需要return,可以在方法的最后返回一个false。供参考。

解决方案 »

  1.   

    非常感谢 啊 真的是要在最后再加一个return语句
      

  2.   

    前几天在哪版的帖子还看到过这程序呵呵
    不知是什么书上的呢这个for还是挺经典的。呵呵
    for(i=0;i<n/2;i++)
          if(n%i==0)
          return false;
      

  3.   

    为什么那个return不能执行呢
    这个是我自己写的
      对于那个for 语句能否说清楚点啊
    这个很迷茫
      

  4.   

    if(m<0)
         {
           throw new ArgumentOutOfBound();//抛出异常
          }
          else
          {
              n=m;
          int i;      for(i=0;i<n/2;i++)
          if(n%i==0)
          return false;
          else //这个else是不是应该去掉啊??直接添下面的这个return true就好了。
          return true;
          }
    ----------------------------------------
    前面我说它经典,是因为我喜欢这句:i<n/2
    呵呵,见笑了。
      

  5.   

    这个还用说吗
    如果if的条件满足那么:还有返回值吗??要记住:if和else只会执行其中的一条
           那么是否执行任何一条都会有返回呢???楼主:你意下如何啊