Как преобразовать десятичную дробь в целое число

#groovy

#groovy

Вопрос:

В groovy, если у меня есть такой код :

 def num = 9
println mum/4
  

какие результаты 2.25 . Но я хочу, чтобы всякий раз, когда я получаю такое десятичное число, мне нужно, чтобы это число округлялось до следующего числа int, в нашем случае оно должно быть 3 . Например, если результат 3.01 равен, мне нужен вывод как 4 . Кто-нибудь может сказать мне, как это сделать в groovy?

Ответ №1:

Вам нужна функция потолка. Я считаю, что это так Math.ceil .

Комментарии:

1. Остерегайтесь, что Math.ceil возвращает double и нет integer .

Ответ №2:

пара других вариантов; если вы объявите свой var как:

 def num = 9
int a = num / 4
println a
  

Или вы можете использовать целочисленное деление:

 println num.intdiv( 4 )
  

Комментарии:

1. Мне нужно получить 3 в качестве вывода. В вашем примере и это не работает, оно возвращает только 2

2. @Ant ahhh, приведенные мною примеры будут округляться в меньшую сторону, если приращение меньше 0,5. Это значение по умолчанию для Java

3. Да, и я думаю Math.ceil , это идеально подходит для этой ситуации 🙂