Вам нужно использовать BigDecimal
, чтобы сделать преобразование из String
, затем BigDecimal(value).floatValue()
, чтобы получить float
. Вы можете сделать это более чем одним способом, примеры
1 - Использование setScale
в BigDecimal
def temp = new BigDecimal(params["standardScore"]).setScale(1, BigDecimal.ROUND_HALF_UP)
2- Использование DecimalFormat
DecimalFormat df = new DecimalFormat("#.0");
def temp = new BigDecimal(df.format(params["standardScore"] ))
Тогда вам нужно получить значение с плавающей запятой
domainInstance.standardScore = temp.floatValue()