Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从数组打印素数_Java_Arrays_Numbers_Primes - Fatal编程技术网

Java 从数组打印素数

Java 从数组打印素数,java,arrays,numbers,primes,Java,Arrays,Numbers,Primes,我想用方法打印出数组中的所有素数。我可以用一个int来做 但不知道如何从数组中返回某些数字。谢谢你的帮助 public static boolean isPrime(int [] tab) { boolean prime = true; for (int i = 3; i <= Math.sqrt(tab[i]); i += 2) if (tab[i] % i == 0) { prime = false

我想用方法打印出数组中的所有素数。我可以用一个int来做 但不知道如何从数组中返回某些数字。谢谢你的帮助

public static boolean isPrime(int [] tab) {
        boolean prime = true;
        for (int i = 3; i <= Math.sqrt(tab[i]); i += 2)
            if (tab[i] % i == 0) {
                prime = false;
                break;
            }
        for(int i=0; i<tab.length; i++)
        if (( tab[i]%2 !=0 && prime && tab[i] > 2) || tab[i] == 2) {
            return true;
                } else {
            return false;
        }
        //return prime;

}
公共静态布尔iPrime(int[]选项卡){
布尔素数=真;

对于(int i=3;i我建议您将其分为两种方法:

  • 确定单个数字是否为素数的一种方法
  • 一个方法遍历数组,用每个数字调用第一个方法,并打印出该方法返回true的值
这就很好地区分了这两个问题。如果你对如何做到这一点感到困惑,请详细说明你觉得哪一点困难。(我假设这是家庭作业,这就是为什么我没有包括代码的原因。)

假设你有:

  • 一个整数数组,有些是素数,有些不是素数
  • 用于测试这些数字中是否有一个是素数的函数
只需在数组上迭代,对于每个数字:

if (isPrime(n)) {
    system.out.println(n);
}
您可能不想尝试同时执行多个int,一次执行一个int应该更容易编写代码

if (isPrime(n)) {
    system.out.println(n);
}