java.util.NoSuchElementException ошибка (возможно, из-за сканера) - PullRequest
0 голосов
/ 08 апреля 2019

Я получаю 'RunTime Error' java.util.NoSuchElementException в строке, где я пытался получить пользовательский ввод.Не знаю, как от него избавиться.

public static void main (String[] args)
    {
        Scanner sc = new Scanner(System.in);
        int input = sc.nextInt();
        double amount = sc.nextDouble();
        if(input%5!=0){
            System.out.println(String.format("%.2f", amount));
        }else if(input>amount){
            System.out.println(String.format("%.2f", amount));
        }else{
            double bankAmount = 0.50;
            double ans = amount - (double)input;
            System.out.println(String.format("%.2f",ans-bankAmount));
        }
        sc.close();
    }

Полная ошибка:

Exception in thread "main" java.util.NoSuchElementException
    at java.util.Scanner.throwFor(Scanner.java:862)
    at java.util.Scanner.next(Scanner.java:1485)
    at java.util.Scanner.nextInt(Scanner.java:2117)
    at java.util.Scanner.nextInt(Scanner.java:2076)
    at Codechef.main(Main.java:14)

1 Ответ

1 голос
/ 08 апреля 2019
 public static void main (String[] args)
    {        Scanner sc = new Scanner(System.in);
            System.out.println("Please enter an integer value:");
            if(sc.hasNextInt()) {
                int input = sc.nextInt();
                System.out.println("Please enter double value:");
                if(sc.hasNextDouble()) {
                    double amount = sc.nextDouble();
                    if(input%5!=0 ||input>amount){
                        System.out.println("amount="+String.format("%.2f", amount));
                    }else{
                        double bankAmount = 0.50;
                        double ans = amount - (double)input;
                        System.out.println("ans="+String.format("%.2f",ans-bankAmount));
                    }
                }            
        }     
       System.out.println("Program exited on invalid value!");
        sc.close();
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...