在下面的代码段从https://github.com/nayuki/Project-Euler-solutions/blob/master/p003.java:项目欧拉3溶液
private static long smallestFactor(long n) {
for (long i = 2, end = Library.sqrt(n); i <= end; i++) {
if (n % i == 0)
return i;
}
return n; // Prime
}
我有点困惑与return n
一部分。在if语句返回后n
是否会假设值为i
?为什么?
因此,如果我返回,n将不会返回,对不对?谢谢。 –