Почему у меня есть это исключение java.util.NoSuchElementException? - PullRequest
0 голосов
/ 19 февраля 2019

Если я вызываю ученика с помощью Scanner, и если раньше я использовал Scanner в основном методе, я получаю ошибку NoSuchElementException, даже если все входные данные доступны.

import java.util.Scanner;
import java.io.*;

class Reminder{
    static void computeReminder(){
        Scanner S=new Scanner(System.in);
        int a,b;
        a=S.nextInt();
        b=S.nextInt();
        int reminder = a%b;
        System.out.println(reminder);
    }
}

class TestClass{
    public static void main(String args[]){
        Scanner scan=new Scanner(System.in);
        int T=scan.nextInt(); //Getting no.of TestCases
        for(int i=0; i<T; i++){
            Reminder.computeReminder(); //Calling Class Method to find reminder.
        }
    }
}

Я могу использовать "Reminder.computeReminder ();»и "int T = scan.nextInt ();"отдельно, но не вместе.

входные данные, которые я использовал:

5
19 5
73 4
7 3
18 4
68 2

ВАЖНОЕ СОСТОЯНИЕ: Метод computeReminder () не должен иметь параметров, поскольку это условие задано онлайн-компилятором моего колледжа.

1 Ответ

0 голосов
/ 19 февраля 2019

Попробуйте повторно использовать сканер вместо создания нескольких.

class Reminder{
    static void computeReminder(Scanner s){
        int a,b;
        a=s.nextInt();
        b=s.nextInt();
        int reminder = a%b;
        System.out.println(reminder);
    }
}

class TestClass{
    public static void main(String args[]){
        Scanner scan=new Scanner(System.in);
        int T=scan.nextInt(); //Getting no.of TestCases
        for(int i=0; i<T; i++){
            Reminder.computeReminder(scan); //Calling Class Method to find reminder.
        }
    }
}
...