int a=0;
for (a=0; a++<=10;) {
System.out.print(a+ " ");
}
Output: 1 2 3 4 5 6 7 8 9 10 11
Почему он печатает 11, когда цикл называется конец, когда переменная «а» достигает 10 также, почему он не начинается с 0, как используется оператор постфикс?Вопросы о Java петлями и операторов пост/префиксов
int a=3, b=4;
int c = a + b++;
System.out.println(+c);
Output: 7
Почему оператор приращения postfix не добавляет значение в переменную 'b'? Не должно ли выход быть «8»?
если это правильно, то почему серия не начинается с 0? – HQuser
@ user2015669: Потому что к тому времени, когда вы используете его в своем 'println', он * уже * был увеличен. Оператор находится в состоянии 'for', поэтому условие' for' использует старое значение. Затем тело 'for' выполняется с' a', имеющим новое значение. –
Когда условие проверяется в части 'for', a = 0. Но после того, как он был проверен, он был увеличен до a = 1. Поэтому он будет печатать '1', а не' 0'. – mmking