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; }