Если y = 1 и y = y ++, почему при печати y это значение 1?

Возможный дубликат:
Что такое x после "x = x ++" ?

int y = 1;
y = y++;
System.out.println("Value Of y :"+y);

Выходной сигнал Значение Y: 1

Я увеличиваю y и снова присваиваю это "y". y ++, следовательно, сначала используется значение, а затем оно увеличивает значение. Следовательно, он присваивает значение и увеличивается. Поэтому я думал, что выход будет равен 2.

int y = 1;
int x = y++;
System.out.println("Value Of x :"+x);
System.out.println("Value Of y :"+y);

Выход:
Значение x: 1
Значение Y: 2

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

Может кто-нибудь объяснить мне почему?