本节主要是讲解Java实现100以内素数的打印实现,如果可以进行代码的优化,我们就可以不断的修订代码,追求代码的效率和质量。
/* 案例题目: 1.使用双重for循环打印 2 ~ 100之间所有的素数 */ public class ForForPrimeTest { public static void main(String[] args) { System.out.println("\n==================第一种嵌套for循环条件=================="); System.out.println("=========从2 ~ i - 1全部遍历,简单,效率低==========="); // 1.外层for循环,遍历所有整数 for(int i = 2; i <= 100; i++) { // 4.设置一个boolean类型的变量来作为标志,判断嵌套for循环中数据是否检测为素数 boolean flag = true; // 2.内层for循环,遍历检测是否有除1和它本身之外的其它因数 //从2 ~ i - 1全部遍历,简单,效率低 for(int j = 2; j <= i - 1; j++) { // 3.如果有整除的数据,则此数据 i 不是素数 if(0 == i % j) { flag = false; break; } } if(flag) { System.out.print(i + " "); } } } }
/* 案例题目: 1.使用双重for循环打印 2 ~ 100之间所有的素数 */ import java.lang.Math; public class ForForPrimeTest { public static void main(String[] args) { System.out.println("\n==================第二种嵌套for循环条件=================="); System.out.println("===========从2 ~ i的开平方根,提升效率,代码优化==========="); for(int i = 2; i <= 100; i++) { // 4.设置一个boolean类型的变量来作为标志,判断嵌套for循环中数据是否检测为素数 boolean flag = true; // 2.内层for循环,遍历检测是否有除1和它本身之外的其它因数 //从2 ~ i的开平方根,提升效率,代码优化 for(int j = 2; j <= Math.sqrt(i); j++) { // 3.如果有整除的数据,则此数据 i 不是素数 if(0 == i % j) { flag = false; break; } } if(flag) { System.out.print(i + " "); } } } }
以上就是今天Java的100以内整数素数的判别。