mirror of
https://gitee.com/dromara/hutool.git
synced 2026-02-09 09:16:26 +08:00
@@ -1342,10 +1342,11 @@ public class NumberUtil {
|
||||
*/
|
||||
public static boolean isPrimes(int n) {
|
||||
Assert.isTrue(n > 1, "The number must be > 1");
|
||||
for (int i = 2; i <= Math.sqrt(n); i++) {
|
||||
if (n % i == 0) {
|
||||
return false;
|
||||
}
|
||||
if (n <= 3) return true;
|
||||
if ((n & 1) == 0) return false;
|
||||
if (n % 3 == 0) return false;
|
||||
for (int i = 5; i <= n / i; i += 6) {
|
||||
if (n % i == 0 || n % (i + 2) == 0) return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -605,6 +605,23 @@ public class NumberUtilTest {
|
||||
assertFalse(NumberUtil.isDouble(" "));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void isPrimesTest() {
|
||||
assertTrue(NumberUtil.isPrimes(2));
|
||||
assertTrue(NumberUtil.isPrimes(3));
|
||||
assertFalse(NumberUtil.isPrimes(4));
|
||||
assertTrue(NumberUtil.isPrimes(5));
|
||||
assertTrue(NumberUtil.isPrimes(7));
|
||||
assertFalse(NumberUtil.isPrimes(9));
|
||||
assertTrue(NumberUtil.isPrimes(13));
|
||||
assertFalse(NumberUtil.isPrimes(25));
|
||||
assertFalse(NumberUtil.isPrimes(49));
|
||||
assertTrue(NumberUtil.isPrimes(113));
|
||||
assertFalse(NumberUtil.isPrimes(121));
|
||||
assertTrue(NumberUtil.isPrimes(2147483647));
|
||||
assertFalse(NumberUtil.isPrimes(2147483646));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void range(){
|
||||
assertFalse(NumberUtil.isIn(new BigDecimal("1"),new BigDecimal("2"),new BigDecimal("12")));
|
||||
|
||||
Reference in New Issue
Block a user