Loading

Java判断是否是质数

public static boolean isPrime(int num) {
    /*
     * 质数定义:只有1和它本身两个因数的自然数
     *
     * 1. 小于等于1或者是大于2的偶数,直接返回false
     * 2. 2直接返回true
     * 3. 从3开始算起(每次加2,截止为输入值的平方根),每次输入值除以前者,若出现一个能除尽则直接返回false
     * 4. 全都除不尽,则为质数,返回true
     * */
    if (num <= 1 || num > 2 && num % 2 == 0) {
        return false;
    } else if (num == 2) {
        return true;
    }
    for (int i = 3; i <= Math.sqrt(num); i += 2) {
        if (num % i == 0) {
            return false;
        }
    }
    return true;
}

 

posted @ 2021-04-12 10:32  Convict  阅读(2815)  评论(0编辑  收藏  举报