测试数字是否为质数:
这是我的代码:
public static boolean isPrime(int x){
if(x<=1)
return false;
else if(x==2)
return true;
else {
for(int i=2; i<=x/2; i++){
if(x%i==0)
return false;
}
return true;
}
}
我的问题是:最后一条语句'return true',如果数字是素数,则不会返回false,但是如果数字不是素数,那么在for循环过程中,就会有false返回。当循环结束时,程序执行下面的for循环语句——‘return true’。所以我想知道返回的 true 是否会覆盖 for 循环期间发生的返回的 false。 (虽然当我测试这段代码时,该代码可以很好地测试数字是否为素数,但我不知道为什么)
最佳答案
在return false
(或任何return语句)之后,该方法将返回而不执行任何其他操作,因此在这种情况下不会达到return true
,因此你的代码工作正常。
关于java - Java中测试数字是否为素数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25143627/