Как работает a = a ++ в java [duplicate]

На этот вопрос уже есть ответ:

оведение приращения @post [duplicate] 4 ответа

Недавно я наткнулся на этот кусок кода Java:

int a=0;
for(int i=0;i<100;i++)
{
    a=a++;
}
System.out.println(a);

Значение, напечатанное для 'a', равно 0. Однако в случае C значение для 'a' оказывается равным 100.

Я не могу понять, почему значение равно 0 в случае Java.