it says:
In the move(boolean, boolean, boolean) method, the x field must be incremented by the value of speedX after the speedX field has been changed.
It seems that x get's incremented by speedX after updating the speedX field. I must overlook something but I can't see what is might be.