Это мой код, но его вывод имеет какой-то смысл.
long currentTime;
long stateStartTime;
int delta;
float speed;
// I do something
System.out.println();
System.out.println(currentTime);
System.out.println(stateStartTime);
System.out.println(delta);
System.out.println(speed);
System.out.println(delta * speed);
System.out.println(currentTime - (stateStartTime + (delta * speed)));
stateStartTime += delta * speed;
System.out.println(currentTime - stateStartTime);
Вывод:
1350065634345877
1350065121656832
1
5.0E8
5.0E8
0.0
-24181867
Я ожидал, что последние две строки будут:
12689045
12689045
Но на удивление я получил вышеуказанный результат.Почему?