Это конец

  • 4
  • Недоступна
Давайте создавать список строк, вводя их с клавиатуры, пока не надоест. Надоесть может в любой момент, и на этот случай нужно придумать специальное слово. Пускай этим словом будет «end», то есть «конец». А зачем нам эти строки, спросите вы. А мы ответим: затем, чтобы добавлять их в список, а затем выводить на экран.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (86)
  • популярные
  • новые
  • старые
Для того, что бы оставить комментарий вы должны авторизоваться
Дмитрий Войтенко9 уровень, Харьков
16 января, 14:24
Подскажите почему в цикле while нужна была переменная в методе s.equals() и list.add(s)? Сначала писал list.add(reader.readLine()), так не проходило валидацию, да и в Idea криво отрабатывала (выводило всегда только 2 значения, а иногда просто зависала).
Alexander Korznikov8 уровень, Киев
суббота, 10:50
Тоже самое, будет интересно узнать ответ.
Bamb9 уровень, Москва
суббота, 12:41
Наверное потому, что каждый раз используя "reader.readLine()", мы получаем новую строку. Если ссылку на неё присвоить переменной, то мы будет работать с данной строкой. Иначе c разными.
Александр9 уровень, Казань
15 января, 11:28
Для заполнения листа использовал while, для вывода for - проверку прошел.
Anatolf8 уровень, Санкт-Петербург
13 января, 15:19
можно удалять объект из списка вот так, если кому вдруг захотелось добавить и последнее слово "end" в список: list.remove("end");
DjAID8 уровень, Санкт-Петербург
суббота, 13:22
проверил - необязательно. можно просто break прописать перед занесением в список
Andrey Gogolev11 уровень, Санкт-Петербург
18 декабря 2018, 09:43
Если цикл такой сделать: - "for (int i = 0; ; i++)", - то вводить данные и выводить на печать можно в одном цикле
Juris 8 уровень
10 декабря 2018, 21:38
вся сложность задания лишь в том, как реализовать в цикле for цикл while =)
y-grek8 уровень, Киев
16 декабря 2018, 15:11
по логике людей, составляющих требования к задачам, цикл фор нужен только для вывода в консоль.. =) хотя и всю задачу можно было решить через for, например ().. только лень, while на много удобнее
Juris 8 уровень
16 декабря 2018, 16:19
пусть while иногда и понятнее смотря со стороны человеческой логики, цикл for работает при переборе элементов работает намного быстрее
Илья22818 уровень, Москва
16 ноября 2018, 13:03
С помощью инфы отсюда и своей смекалкой получил это:
for (;true;)
{String s = reader.readLine();
if (s.equals("end"))
break;
list.add(s);
P.S. Как-то неловко, что задачи вроде легкие, а до идеи не всегда удается быстро догонять, сюда лезу зачастую быстро. А на других задачах все говорят, что сложно, но при этом там как раз сам решаю за минут 5 -_-
Анатолий Гончаров8 уровень, Москва
16 января, 00:11
вот за это большое благодарю, я забыл, что String работает как ссылка, а не как примитивный тип
(s.equals("end"))
Иван22 уровень
26 октября 2018, 16:21
Тут многие пишут второй цикл для вывода на экран строк из листа. Я запилил проще - сначала залил строку в список и следом выводил эту же строку на экран. Самом собой это было в теле логического оператора if в ктором строка проверялась на несоответствие слову "енд"
Костя Демчук8 уровень
30 октября 2018, 19:30
получается после каждой введенной строки "!end" она сразу выводиласьна экран?
VitalyK #111612414 уровень
6 августа 2018, 10:05
кому нужен бесконечный цикл -> for (int i=0; ; i++) { list.add(reader.readLine()); if (list.get(i).equals("end")) { list.remove(i); break;}
Александр Толкачёв22 уровень, Санкт-Петербург
20 августа 2018, 17:31
бесконечный цикл for делается проще
for(;;) {}
Alexander15 уровень
2 октября 2018, 15:44
В чем смысл добавлять, а потом удалять, если можно (и нужно) сразу не добавлять "end"?
Riccio14 уровень, Москва
13 октября 2018, 13:08
Тогда уж
while (true) {
...
}
А циклом for оформить вывод.
Иван Зубов30 уровень, Москва
25 июля 2018, 16:24
непонятно где использовать for: при формировании цикла ввода строк списка или при выводе списка
MP14 уровень
15 июля 2018, 13:19
Тормозил очень долго, в течение часа. Решил следующим образом: 1) Заполнил список через while (true); 2) Внутри while завел строковую переменную для хранения считанной из буфера строки; 3) Проверил строку на неравенство значению "end", иначе - выход через break; 4) Вывод итогового списка через foreach.
Дмитрий19 уровень
25 июля 2018, 16:37
Все то же самое сделал, но цикл не прерывается при введении end
MP14 уровень
26 июля 2018, 15:35
При заполнении списка значениями после введения end нужно еще ввести пустую строку, нажав Enter