Можно ли заполнить массив с клавиатуры с помощью 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++) {
...
}
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости