nitinjain9619 Ответов: 0

Как ограничить ввод пользователем только одного номера с помощью объекта сканера


Scanner sc = new Scanner(System.in);
int tosend = sc.nextInt();

Я хочу, чтобы пользователь мог ввести только один номер, после чего объект сканера должен быть остановлен, но я не хочу закрывать этот объект, потому что он мне понадобится позже.

Что я уже пробовал:

Я пытался ограничить ввод только одного числа с помощью переменной флага, но это не сработало.

Richard MacCutchan

Нетрудно написать код, который вызывает nextInt только один раз. Что именно вы пытались сделать?

nitinjain9619

я пытался неправильно создать переменную int flag=1, а затем перед чтением пользовательского ввода я проверял flag is 1, если да, то разрешите писать с помощью sc.nextInt(); и после этого flag=0;

Richard MacCutchan

Зачем вам вообще нужен флаг? Просто вызовите nextInt один раз, чтобы захватить ввод пользователя. Вам не нужно вызывать его снова. Но вам действительно нужно показать свой код и более четко объяснить, что именно вы пытаетесь сделать.

nitinjain9619

на самом деле я хочу, чтобы если пользователь вводит для первого, чем это должно быть разрешено, то после этого объект сканера не должен ничего хранить (после нажатия клавиши enter).
я работаю над проектом Игры в бинго,где каждый игрок будет получать шанс по кругу, мой код работает идеально, если пользователь вводит одно число за раз, но всякий раз, когда он вводит два числа одновременно, то при следующем шансе все, что он написал 2-й раз в своем предыдущем шансе, рассматривает его сыгранный номер в текущем шансе я хочу остановить пользователя для ввода двух чисел одновременно.

и спасибо за Вашу поддержку..

nitinjain9619

да,я применил его, и теперь он работает нормально, но теперь я хочу, чтобы объект сканера не хранил ничего после нажатия клавиши enter, он должен хранить только первое число и после этого прекращать чтение. Возможно ли это?

Richard MacCutchan

Сканер будет читать только то, что вы сказать ему, чтобы прочитать. И он будет хранить только то, что вы скажете ему хранить.

nitinjain9619

Я очень тронут тем, что вы сделали для меня, и еще раз благодарю вас

0 Ответов