Добрый день! Пара вопросов:
1) объясните, пожалуйста, роль цикла while в этой задаче 🙏 никак не пойму..
2) смысл записи: s += " " + i; где s - типа String, а i - типа int ..
Denis Nkn
26 уровень
Вопросы
Обсуждается
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
ГоффMaster
10 октября, 07:03
Код бы ещё посмотреть.
А так - цикл while крутится, пока условие в скобках истинно. Проверка условия происходит ПЕРЕД каждой итерацией.
Происходит неявный каст инта в строку. В строку s через пробел записываются значения i.
0
Denis Nkn
10 октября, 14:27
Задача называется Horse Racing из 6 уровня Java Core.
Здесь детально код с s:
public void run() {
String s = "";
for (int i = 0; i < 1001; i++) { // Задержка
s += "" + i;
if (i == 1000) {
isFinished = true;
s = " has finished the race!";
System.out.println(getName() + s);
}
}
Не совсем понимаю, зачем писать: s +="" +i
если она используется только в случае i==1000;
0
Denis Nkn
10 октября, 14:28
Забыл, что в решённой задаче код не прикрепляется. Сам while я более-менее понимаю, но именно в этой задаче мне совсем не очевиден смысл его присутствия, так как в скобках пусто. Вот, собственно, код: public static void main(String[] args) throws InterruptedException { List<Horse> horses = prepareHorsesAndStart(10); while (calculateHorsesFinished(horses) != horses.size()) { } }
0
ГоффMaster
10 октября, 19:37
Я тоже не понимаю. Откуда этот бредок вообще?
Пустой цикл while используется что бы притормозить выполнение программы до наступления какого-то желаемого условия. Здесь программа тормознётся до тех пор, пока calculateHorsesFinished(horses) не станет равным horses.size()
0