Можно ли заполнить массив с клавиатуры с помощью foreach
? Суть какая: создаю список и хочу заполнить данными с клавиатуры, пока не введу "стоп-слово".
В принципе можно.
String stop = "STOP";
Scanner scanner = new Scanner(System.in);
String[] array = new String[scanner.nextInt()];
int pos = 0;
for (String s : array) {
String value = scanner.next();
if (value.equals(stop))
break;
array[pos++] = value;
}
Но это глупо, ведь всё равно приходится хранить индекс элемента, а переменная s
вообще не используется.
Приравнять s
к value
нельзя из-за того, что String
- ссылочный тип, при присваивании переменной типа String
нового значения, старое значение в памяти остаётся, но переменная начинает ссылаться на новое значение в памяти.
foreach
используется только для чтения массива, но не для записи в него.
В вашем случае стоит использовать цикл for
.
for (int pos = 0; pos < array.length; pos++) {
...
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Вечер добрый, простите за тупость, в java меньше 3-х недель и немного не понимаю как добавить переменную в код, чтобы сортировка была именно на столько...
Не погу понять, как сделать,чтобы при нажатии кнопки create pet можно было создать Pet
Мне нужно реализовать сетевое взаимодействие приложений на Android (Java) и Windows (C#)Я испытываю трудности с написанием серилизатора на разных языках...
Есть большой массив объектов BitmapНужно пройтись по каждому элементу и создать отдельный список где каждый дубликат будет отсортирован