(Потенциально странное) поведение с длинным приращением?JAVA

Программисты JAVA общаются здесь
Anonymous
(Потенциально странное) поведение с длинным приращением?

Сообщение Anonymous »

Мне немного неловко задавать этот вопрос, но результат следующего фрагмента кода поставил меня в тупик:

Код: Выделить всё

System.out.println("incrementResultResponses() has been invoked!");
final long oldValue = resultResponses;
final long newValue = resultResponses++;
System.out.println("Old value = " + oldValue);
System.out.println("New value = " + newValue);
Это выведет следующее:

Код: Выделить всё

incrementResultResponses() has been invoked!
Old value = 0
New value = 0
Почему? Будет ли параллелизм иметь какое-либо влияние на результат? Кстати, resultResponses — длинный.

Подробнее здесь: https://stackoverflow.com/questions/916 ... t-behavior

Вернуться в «JAVA»