/*
100000以内的所有质数的输出
质数:素数,只能被1和它本身整除的自然数。-->从2开始,到这个数-1结束为止,都不能被这个数本身整除
*/
@Test
public void test2() {
boolean isFlag = true;//标识i是否被j除尽,一旦除尽,修改其值
long start = System.currentTimeMillis();
int count = 0;//记录质数的个数
for(int i = 2;i <= 100000;i++) {//遍历100以内的自然数
//优化二:只对本身质数的自然数是有效的
for(int j = 2;j <= Math.sqrt(i);j++) {//j:被i去除
if(i % j == 0) {//i被j除尽
isFlag = false;
break;//优化一:只对本身非质数的自然数是有效的
}
}
if(isFlag == true) {
// System.out.println(i);
count++;
}
//重置isFlag
isFlag = true;
}
long end = System.currentTimeMillis();
System.out.println("质数个数为:" + count);
System.out.println("花费时间为:" + (end - start));