猿问

将Float格式化为n个小数位

将Float格式化为n个小数位

我需要将float格式化为“n”个小数位。

正在尝试BigDecimal,但返回值不正确...

public static float Redondear(float pNumero, int pCantidadDecimales) {
    // the function is call with the values Redondear(625.3f, 2)
    BigDecimal value = new BigDecimal(pNumero);
    value = value.setScale(pCantidadDecimales, RoundingMode.HALF_EVEN); // here the value is correct (625.30)
    return value.floatValue(); // but here the values is 625.3}

我需要返回一个浮点值,其中包含我指定的小数位数。

我不需要Float价值回报Double


GCT1015
浏览 886回答 3
3回答

哆啦的时光机

您也可以传递浮点值,并使用:String.format("%.2f", floatValue);文档

蛊毒传说

看看DecimalFormat。您可以轻松地使用它来取一个数字并给它一组小数位。编辑:示例

LEATH

试试这个对我帮助很大BigDecimal roundfinalPrice = new BigDecimal(5652.25622f).setScale(2,BigDecimal.ROUND_HALF_UP);结果将是圆形的价格 - > 5652.26
随时随地看视频慕课网APP

相关分类

Java
Android
我要回答