使用BigInteger类型获取质数的Java程序
在本文中,我们将学习如何使用BigInteger类在Java中生成质数。质数是一个大于1的自然数,不能表示为两个较小自然数的乘积。这里,我们使用BigInteger类型,它具有用于模运算、GCD计算、素性测试、素数生成等的运算。
使用BigInteger类型获取质数的步骤
以下是使用BigInteger类型获取质数的步骤:
- 首先,我们将从java.math包中导入**BigInteger**。
- 初始化**Demo类**,并从**0**开始计数。
- 我们将使用While循环持续检查质数,直到达到指定的限制(在本例中为50)。
- 我们将检查以下条件:
- 跳过小于或等于**1**的数字,因为它们不是质数。
- 使用**BigInteger**的isProbablePrime()方法检查当前数字是否为质数。
- 打印找到的每个质数。
使用BigInteger类型获取质数的Java程序
以下是使用BigInteger类型获取质数的Java程序:
import java.math.BigInteger; public class Demo { public static void main(String[] args) { int val = 0; System.out.println("Prime Numbers..."); while (true) { if (val > 50) { break; } if (val > 1) { if (new BigInteger(val+"").isProbablePrime(val / 2)) { System.out.println(val); } } val++; } } }
输出
Prime Numbers... 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47
代码解释
在程序中,我们首先将变量**val**初始化为0,然后进入一个无限循环的**while循环**。我们设置一个条件,一旦**val**超过50就跳出循环。在循环内,我们首先检查**val**是否大于1以排除非质数候选者。对于每个有效的**val**,我们创建一个新的BigInteger对象,并使用**isProbablePrime()方法**根据给定的确定性(在本例中为val的一半)来确定它是否为质数。如果是质数,我们将其打印到控制台。
广告