用java求一定范围内的质数
除了2要特殊处理以外,所有质数都是奇数,给定一个奇数i,判断从3开始到它自身的开方之间的所有奇数是否能整除就行了,这是最快的方法。
for (int i = min; i <= max; i += 2) {
int temp = (int) Math.sqrt(i);
boolean isPrime = true;
for (int j = 3; j <= temp; j += 2) {
if (i % j == 0) {
isPrime = false;
break;
}
}
if (isPrime) {
total++;
System.out.print(i + " ");
}
}