您的位置:

java获取质数,java质数输出

本文目录一览:

怎样用Java求1~10000中的所有质数最简便的方法

运用java8新特性stream来解决

参考以下代码

/**

 * IntStream.range(1,10001) :获取一个stream,是从1-10000的

 * filter: 取出stream每个数字进行过滤,比如选取数字300,则再构造一个stream,从2-299,依次用300取余2-299中的数,若有一个是整除,余数为0的话,这个数字就不是我们要找的质数,跳过

 * forEach:打印经过filter过滤后的stream中的每个数

 */

IntStream.range(1,10001).filter(outerInt- !IntStream.range(2,outerInt).anyMatch(innerInt-outerInt%innerInt==0))

                        .forEach(System.out::println);

java给定一个二维整数数组,找出其中的质数

public class PrimeNumber {

 

    public static void main(String[] args) {

            

            int[][] a=new int[][]{{7,12,4,9,6},{3,9,6,47,54}}; //新建二维数组

            //用两个循环来遍历二维数组

            for(int i=0;i2;i++){//数组有两行

                for(int j=0;j5;j++){//数组有5列

                    if (isPrime(a[i][j])) {// 调用isPrime()方法判断数组的元素是否是质数

                     System.out.println(a[i][j]);// 若isPrime()方法返回true,输出是素数

                    }

                }

            }

            

    }

 

    /**

     * pre

     * 用于判断一个数是否为素数,若为素数,返回true,否则返回false

     * /pre

     * 

     * @param a

     *            输入的值

     * @return true、false

     */

    public static boolean isPrime(int a) {

 

        boolean flag = true;

 

        if (a  2) {// 素数不小于2

            return false;

        } else {

 

            for (int i = 2; i = Math.sqrt(a); i++) {

 

                if (a % i == 0) {// 若能被整除,则说明不是素数,返回false

 

                    flag = false;

                    break;// 跳出循环

                }

            }

        }

        return flag;

    }

}

用JAVA语言求质数

程序如下,希望有所帮助

public class Prime {

//判断质数

public static void isPrime(int num) {

int j = 2;

for (; j = Math.sqrt(num); j++) {

if (num % j == 0) {

System.err.println(num + "不是质数!");

return;

}

}

if (j Math.sqrt(num)) {

System.err.println(num + "是质数!");

return;

}

System.err.println(num + "不是质数!");

return;

}

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

System.err.println("请输入数字:");

int num = sc.nextInt();//接收输入

isPrime(num);//判断是否为质数

}

}

java质数怎么求100-200

public class PrimeNumber {

/**

* 质数,只能被1和自身整除

* @param args

*/

public static void main(String[] args) {

for (int i = 100; i = 200 ; i++) {

/*

标识位:true表示质数,false表示非质数

假定每个数一开始都是质数

*/

boolean flag = true;

for (int j = 2; j i ; j++) {

/*

从2开始除,只要余数为0就表示这个数能被其他数整除

然后将标识位设置为false,然后跳出内层循环执行

*/

if (i % j == 0){

flag = false;

break;

}

}

/*

根据标识位来判定是否是质数,是的话就输出

*/

if(flag){

System.out.println("质数:" + i);

}

}

}

}