2015-07-01 4 views
-6

Я сделал поплавок, который добавляет 1 к нему каждую секунду, используя deltaTime, затем распечатывая его на экране, я не хочу видеть все числа после точки.Как преобразовать float в integer?

float+=1*deltaTime; 
//result is something like this 1.1149411, I instead want it to be just 1. 
+1

'int number = (int) deltaTime;' ... – Toumash

+0

@Trobbins Я был введен в заблуждение по названию вопроса. – JackWhiteIII

ответ

1

Вы могли бы просто использовать бросок к int так:

int integerNumber = (int) yourFloat; 
+0

Спасибо, что это сработало, но не могли бы вы объяснить мне, что такое кастинг и как оно работает? –

+0

Пожалуйста, см. Ответ Павла, он объясняет больше. – JackWhiteIII

+0

@StormAsdg Пожалуйста, просто Google это. Вам не нужно спрашивать кого-то каждый раз, когда у вас есть невероятно простой вопрос, а ваш оригинальный пост - еще один пример. Вам нужно научиться помогать себе. – tnw

2

Есть два варианта:

  • литейные: это произведет неокругленный результат. Например: 2.7 будет преобразовано в 2.

    int someInt = (int) someFloat;

  • округление: результат будет округлен правильно.

    int someInt = Math.round (someFloat);

+0

большое спасибо. –

Смежные вопросы