Ответ 1
Это эквивалентно while(true)
.
A для цикла имеет три элемента:
- инициализатор
- условие (или выражение завершения)
- выражение приращения
for(;;)
не устанавливает ни одного из них, делая его бесконечным циклом.
Ссылка: Инструкция for
Я искал класс AtomicInteger
, и я наткнулся на следующий метод:
/**
* Atomically increments by one the current value.
*
* @return the previous value
*/
public final int getAndIncrement() {
for (;;) {
int current = get();
int next = current + 1;
if (compareAndSet(current, next))
return current;
}
}
Может кто-нибудь объяснить, что означает for(;;)
?
Это эквивалентно while(true)
.
A для цикла имеет три элемента:
for(;;)
не устанавливает ни одного из них, делая его бесконечным циклом.
Ссылка: Инструкция for
Я оставлю это здесь на всякий случай, если вы визуальный ученик.:)
Это то же самое, что и
while(true) {
//do something
}
... чуть менее понятно.
Обратите внимание, что цикл завершится, если compareAndSet(current, next)
будет оцениваться как true
.
Это просто еще одна вариация бесконечного цикла, как и while(true){}
.
Это цикл for ever. это всего лишь цикл без каких-либо определенных условий.
Это бесконечный цикл, например while(true)
.