Это возможно только в том случае, если Java обновляет значения после того, как весь оператор начинается с ';' завершилось. Если это так, то какой смысл иметь операцию равенства?
Разве это не должно соответствовать z =x +y-(x+y);
Код: Выделить всё
class HelloWorld {
public static void main(String[] args) {
int x = 10;
int y = 20;
int z = x += y -= x += y;
System.out.println(z);
}
}
РЕДАКТИРОВАТЬ: Мой вопрос: почему мы вообще используем значение x = 10 следующие выражения, когда x+=y, в конечном итоге обновят значение x до 30?
Подробнее здесь: https://stackoverflow.com/questions/787 ... able-value