Не срабатывает пересчёт for

Добрый день. Подскажите в чём может быть проблема.

class Hopot {
	public static void main (String args[]) {
 boolean b;
 b = false;
 b = true;
 System.out.println(" Результат сравнения 10 > 9 " + (10 > 9) );
if (b == false) System.out.println(" Не правда ");
if (b == true) { System.out.println(" Правда ");
System.out.println();
int z;
for (z = 0; z <= 1000; z++);
System.out.println(" Значение " + z + " едениц ");
if (z >= 1000)  System.out.println(" Значение достигло своего придела ");
        }
	}
}

Как именно не срабатывает? Что ожидалось, что выводит?

Ожидалось, что в случае верного выражения, будет пересчёт от одного до тысячи.
Выдаёт, просто значение 1000

Так у цикла тела нет.

Надо так

for (z = 0; z <= 1000; z++) {
    ...........
}

а не так

for (z = 0; z <= 1000; z++);
..........

Если бы нормально форматировали код (отступы), то сразу было бы видно.

Проблема была в точке с запятой в строке
for (z = 0; z <= 1000; z++);
её не нужно было ставить.

Ну так я это и сказал.

Но еще желательно добавлять { } даже если одна операция внутри, чтобы уменьшить риск ошибки при редактировании в будущем.

И отступы расставлять нормально, чтобы видеть что к чему относится.

...;

for (...) {
    ...;
}

...;

if (...) {
    ...;
    if (...) {
        ...;
    } else {
        ...;
    }
}

Спасибо тебе!

Мне вот этот момент не понятен:

boolean b;
 b = false;
 b = true;

Т. е. всегда будет истинно (верно). Правильно понимаю?

Видимо это просто чтобы проверить как работает if в процессе изучения )