素数
public static boolean isPrime(long n) {
if (n <= 3) {
return n > 1;
}
if (n % 2 == 0 || n % 3 == 0) {
return false;
}
for (int i = 5; i * i <= n; i += 6) { //约数的总步长6
if (n % i == 0 || n % (i + 2) == 0) { //约数的步长浮动2。25以内的约数都是2,3,5故从5开始
return false;
}
return true;
} |