Я понимаю, что символ терминатора термина ;
, если он используется в одиночку, представляет собой нулевой оператор. Кроме того, "пустые тела цикла" могут быть полезной конструкцией программирования и выполняются с использованием нулевых операторов.
Глядя на приведенное ниже выражение, в строке 2, я решил заменить завершающий символ ;
на пару фигурных скобок {}
. Код скомпилирован и работает нормально. Означает ли это, что компилятор Java заменяет пустой блок кода (представленный "пустым" <фигурным скобками {}
) с нулевым утверждением ;
?
Если Java делает что-то немного другое, будет ли полученный байт-код одинаковым в обоих случаях? (Мне жаль, что я не могу проверить этот банкомат. Я новичок в Java, и у меня пока нет необходимых знаний для отображения и изучения байт-кода).
int i=0,j=100;
// Either a terminating ; symbol or {} braces work to make an "empty loop body".
while (++i < --j) {}
System.out.println("The midpoint between 0 and 100 is " +i); // Midpoint is 50.