Почему java при выводе выдает некорректное значение?