Я пытаюсь понять, как собирать пользовательский ввод и цикл до условий. Я хочу зацикливать сканер до тех пор, пока пользовательские входы 0, однако мне нужно, чтобы каждое введенное целое число сохранялось, чтобы к нему можно было получить доступ для последующего использования. Жесткая часть - я не могу использовать массив.Непрерывный сбор данных до тех пор, пока условия не будут выполнены?
ответ
просто вы можете сделать что-то вроде
List mylist = new ArrayList(); //in java. other wise you can create array[size]
int input = 1;
while(input!=0)
{
/* input number from user here */
if(input!=0)
mylist.add(input);
}
Вот простой способ пользовательского ввода петли до 0
не вводится.
Scanner console = new Scanner(System.in);
boolean loop = true;
String input;
while(loop) {
input = console.nextLine();
//Add input to a data structure
if (input.equals("0")) {
loop = false;
}
}
Что касается добавления пользователя к структуре данных, вы сказали, что не можете использовать массив. Как насчет List или Set. Даже работала бы Stack или Queue. Вы рассматривали использование какой-либо из этих структур данных?
Вот простой пример с использованием списка:
List<String> aList = new ArrayList<String>();
aList.add(input);
И это, как вы могли бы использовать Stack:
Stack<String> stk = new Stack<String>();
stk.push(input);
Пожалуй, наиболее эффективным способом было бы использовать HashSet:
Set<String> set = new HashSet<String>();
set.add(input);
Использование массивов здесь было бы немного сложно, так как вы не знаете, какое количество элементов пользователь собирается en тер. Вы всегда можете написать код для создания нового массива с большей емкостью, как только пользователь извлечет первоначальную емкость и скопирует существующие элементы ввода, но использование List
будет намного проще.
Scanner scanner = new Scanner(System.in);
List<Integer> input = new ArrayList<>();
int nextInt = Integer.MIN_VALUE;
while((nextInt = scanner.nextInt()) != 0){
input.add(nextInt);
}
См. Этот вопрос, если вы действительно хотите использовать массивы. Ответ объясняет создание новых массивов и копирование элементов. Java dynamic array sizes?
- 1. Повторяя метод до тех пор, пока не будут выполнены условия
- 2. Повторяйте макрос до тех пор, пока критерии не будут выполнены.
- 3. Перетасовка ArrayList до тех пор, пока условия не будут выполнены (Java)
- 4. Сделать кнопку unclickable до тех пор, пока не будут выполнены определенные условия в TitleAreaDialog?
- 5. делает основной метод до тех пор, пока все потоки не будут выполнены до выполнения следующей строки?
- 6. Графический текст не будет обновляться до тех пор, пока не будут выполнены другие операции
- 7. Несколько запросов AJAX не вызывают onSuccess до тех пор, пока не будут выполнены все запросы
- 8. Firebase wait до тех пор, пока значения не будут обновлены.
- 9. Как остановить код до тех пор, пока не будут выполнены запросы Ajax?
- 10. как непрозрачность страницы asp.net при нажатии кнопки, до тех пор, пока не будут выполнены процедуры
- 11. AngularJS ждать до тех пор, пока не будут выполнены многие таймауты
- 12. Как предотвратить закрытие приложения iPhone до тех пор, пока все действия не будут выполнены
- 13. UI зависает до тех пор, пока не будут выполнены все выборки
- 14. phpseclib зависает webserver до тех пор, пока все команды не будут выполнены
- 15. Как сделать кнопку неактивной до тех пор, пока не будут выполнены требования
- 16. Интерфейс «заблокирован» до тех пор, пока данные не будут получены
- 17. Скрыть изображения до тех пор, пока они не будут загружены
- 18. Отключить отправку до тех пор, пока не будут установлены флажки
- 19. Директива AngularJS до тех пор, пока не будут отображены шаблоны
- 20. Повторить цикл до тех пор, пока не будут найдены ошибки
- 21. Как получить функцию для выполнения до тех пор, пока условия не будут достаточными
- 22. До тех пор, пока цикл не выйдет
- 23. Изображения в веб-приложении не будут отображаться до тех пор, пока не будут перераспределены?
- 24. Рубиновое сканирование/до тех пор, пока EOF
- 25. WAS не может проверить подключение источника данных до тех пор, пока не будут синхронизированы изменения.
- 26. Остановка выполнения скрипта R до тех пор, пока данные не будут доступны
- 27. Git не синхронизирует файлы до тех пор, пока они не будут выполнены, даже если они выписаны в другой ветке
- 28. Повторение Паскаля ... до тех пор, пока против C не ... пока
- 29. До тех пор, пока Onkey {RIGHT}
- 30. До тех пор, пока в Windows Powershell
Какой язык вы используете? – Stijn
Это на Java? Также, если вы не можете использовать массив ... что вы можете использовать? –
Да, это Java sorry – Ryan