质数(又称素数),是指在大于1的自然数中,除了1和它本身外,不能被其他自然数整除(除0以外)的数称之为素数(质数)。请写个程序判断输入的数字是否是质数,如果是素数请输出:true,不是请输出false  
                                        输入待判断的数字
判断的结果:true或false
2
true
4
false
请注意算法效率,该题目有时间限制 , 输入的数字小于2^64 次幂
package leecode;
public class IsPrimeDemo {
    public static boolean isPrime(int n){
        if (n < 1){
            return false;
        }
        int i = 2;
        int end = (int) Math.sqrt(n);
        while (i <= end ){
            if (n % i == 0){
                return false;
            }
            ++i;
        }
        return true;
    }
    public static void main(String[] args) {
        int n = 7;
        System.out.println(isPrime(n));
    }
}
 public static void main(String[] args) {
    while (true) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入数字");
        int num = scanner.nextInt();
        if (num > 1) {
          if (num == 2 || num == 3) {
              System.out.println(true);
          }
          int i = 2;
          int end = (int) Math.sqrt(num);
          while (i <= end) {
             if (num % i == 0) {
               System.out.println(false);
               break;
             }else{
               System.out.println(true);
               break;
             }
          }
        }else {
           System.out.println("输入数字不合规,请输入大于1的数字");
        }
    }
}