Watson Assistant: округлить двойное значение до 2 десятичных знаков - PullRequest
0 голосов
/ 09 мая 2018

У меня в диалоговом узле Watson Assistant есть диалоговый узел, который берет число, предоставленное пользователем, и затем предоставляет ответ с этим числом, используемым в делении, следующим образом:

<? (1000 * ($Number / 6.00)) ?> Grams

Проблема в том, что это возвращает сообщение, подобное этому: (Учитывая, что число было 2)

333.3333333333333 Grams

Удаление .00 из 6.00 приводит к:

0 Grams

Есть ли способ округлить результат деления? В идеале я хотел бы округлить его до ближайшего кратного десяти, но округление до 2 десятичных знаков также было бы приемлемым. Я хочу получить окончательное сообщение примерно так:

333.33 Grams

1 Ответ

0 голосов
/ 10 мая 2018

Вы можете использовать один из round() методов , предоставленных ava.lang.Math. Watson Assistant позволяет использовать эти методы при обработке ввода . В зависимости от того, сколько фракций вам нужно, вам нужно «помассировать» числа. Есть методы round () для float и double. Сначала вы можете обратиться к Double (), чтобы убедиться, что число обрабатывается правильно.

Обратите внимание, что обсуждается, как выполнить точное и эффективное округление в Java .

...