方法1: /** * 一般求素数方法 * 让x被2到sqrt(x)除, * 如果x能被2至sqrt(x)之中任何一个整数整除, * 那么说明x不是素数,否则是素数。 */ public static void Normal() { for(int i=2; i<100; i++) { int j; for(j=2; j<(int)(Math.sqrt(i)+1);j++) { if(i%j==0) break; } if(j>(int)Math.sqrt(i)) { System.out.println(i+" "); } } } 方法2: /** * 传递一个数值,如果该数值为2或者3,直接输出2或(2,3), * 否则进行判断其是否为素数并输出 * @param n */ public static void getRun(int n){ int count= 0; if(n==2) { count =1; System.out.println(n); } else if(n==3) { count =2; System.out.println(--n); System.out.println(++n); } else if(n>4){ for(int i=3;i<n;i=i+2){ if(isPrimeT(i)){ count++; System.out.println(i); } } } System.out.println("总数:"+count); } /** * * 传递一个大于或者等于三的值进行判断其是否为素数 * @param n * @return true or false 是否是素数 */ public static boolean isPrimeT(int n){//判断该数是否是素数 for(int j=3;j<(n+1)/2;j+=2){ if(n%j==0){ return false; } } return true; }