Как здесь срабатывает проверка на истинность?

Только учусь java. Это программка по выводу четных чисел. И почему-то я проверку на истинность понимаю наоборот. Как я мыслю... Например i=5, соответственно остаток по модулю равен 1. И тут проверка на истинность 1!=0, то есть "вопрос 1 не равно 0?" Ответ на этот вопрос - "Да", значит True и проверка на истинность пройдена. Значит цифра 5 должна выводится в консоль, а она не выводится. Подскажите пожалуйста где в моем мышлении ошибка.

public class HelloWorld {
    public static void main(String[] args) {

        int i;

        for (i = 0; i <= 20; i++) {
            if ((i % 2) != 0) continue;
            System.out.println(i);
        }
    }
}

Ответы (3 шт):

Автор решения: Andrew Bystrov

вопрос 1 не равно 0?" Ответ на этот вопрос - "Да", значит True и проверка на истинность пройдена. Значит цифра 5 должна выводится в консоль

все верно, кроме последнего предложения. у вас код выглядит так

if ((i % 2) != 0) continue;

соответственно, подставляем 5, получаем (5 % 2 = 1) != 0 ? да, 1 не равно 0, следовательно, идем на следующую итерацию

→ Ссылка
Автор решения: Эникейщик

Если проверка выдает True, то выполняется continue. Вывод выполняется если проверка выдает False.

→ Ссылка
Автор решения: Barmaley Red Star

Вы не учитываете поведение инструкции continue, по сути она "бросает" вас на конец цикла

Не на начало, а именно конец - это важно потому что есть постфиксные циклы типа do-while, в которых проверка условия цикла выполняется в конце, а не в начале.

→ Ссылка