Java程序在运行时不要求输入,我做错了什么?

时间:2019-02-28 19:36:25

标签: java

我正在尝试创建一个代码,在该代码中用户输入数字,然后程序返回数字是否为质数。这是我的第一个Java代码,所以我还在学习!代码可以编译,但是当我运行它时,它没有输入选项。

import java.util.Scanner;

public class Prime {
    public void main(String[] args) 
{
        Scanner reader = new Scanner(System.in); 
        int number = reader.nextInt();
        if (isPrime(number) == true)
        {
            System.out.println(number+"is a prime number");
        }
        else
        {
            System.out.print(number+"is not a prime number");
        }
    }

    public boolean isPrime(int number)
    {
        int counter = 0;
        boolean result = true;
        for (int n = 2; n <= 9; n++) {
            if (number % n == 0 && n != number) {
                counter = 1;
            } else {
                counter = 2;
            }
            if (counter == 1){
                result = true;
            }
            else result = false;
        }
            return (result);
    }
}

2 个答案:

答案 0 :(得分:4)

这里的问题是有关缺少 static 关键字的主要方法的,因此没有该关键字,就没有应用程序条目。

请从

更改主要方法
public void main(String[] args) 

收件人

public static void main(String[] args) 

另外,将 static 添加到isPrime方法中,以便一切正常。

答案 1 :(得分:0)

出现此问题是因为Java编译器未找到入口点

代码段 Run Code Here

import java.util.Scanner;

   public  class Prime {
        public static void main(String[] args) 
    {
            Scanner reader = new Scanner(System.in); 
            int number = reader.nextInt();
            if (isPrime(number) == true)
            {
                System.out.println(number+"is a prime number");
            }
            else
            {
                System.out.print(number+"is not a prime number");
            }
        }

       static public boolean isPrime(int number)
        {
            int counter = 0;
            boolean result = true;
            for (int n = 2; n <= 9; n++) {
                if (number % n == 0 && n != number) {
                    counter = 1;
                } else {
                    counter = 2;
                }
                if (counter == 1){
                    result = true;
                }
                else result = false;
            }
                return (result);
        }
    }