判断是否是质数当中的条件判断,想知道原因

public Boolean isPrimeNumber(int number) {

    //write your code here......
    if(number>1){
     int i;
     for(i=2;i<number;i++)
        {
        if(number%i==0)
            return false;
        }
        if(i==number)
            return true;
    }
     else
         return false;
}

报错如下:

编译错误:您提交的代码无法完成编译
Main.java:26: error: missing return statement
}
^
1 error

if(number>1){
 for(int i=2;i<number/2;i++)//这里遍历到number的1/2就行了,没必要全量遍历。
    {
    if(number%i==0)
        return false;
    }
} else {
    return false;//1不是质数
}
return true;//默认返回

你这个函数不是所有路径都有return

public Boolean isPrimeNumber(int number)
 {
    if(number>1)
    {
        int i;
        for(i=2;i<number;i++)
        {
            if(number%i==0)
                return false;
        }
        if(i==number)
            return true;
    }
    return false;
}

你有一个没有通过编译的错误,这个错误是一个没有返回值的错误。
这个返回值是要反馈给主函数的,这里并未有能反馈主函数的返回值,导致了错误。

希望对题主有所帮助!可以的话,帮忙点个采纳!