Formato flotante hasta n decimales

Resuelto seba123neo asked hace 54 años • 11 respuestas

Necesito formatear un flotante en "n" lugares decimales.

Estaba intentando BigDecimal, pero el valor de retorno no es correcto...

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
}

Necesito devolver un valor flotante con el número de decimales que especifico.

Necesito Floatvalor de retorno noDouble

.

seba123neo avatar Jan 01 '70 08:01 seba123neo
Aceptado

También puedes pasar el valor flotante y usar:

String.format("%.2f", floatValue);

Documentación

Arve avatar Mar 21 '2011 20:03 Arve

Eche un vistazo a formato decimal . Puedes usarlo fácilmente para tomar un número y darle un número determinado de decimales.

Editar : ejemplo

Nick Campion avatar Mar 04 '2011 15:03 Nick Campion

Prueba esto esto me ayudó mucho.

BigDecimal roundfinalPrice = new BigDecimal(5652.25622f).setScale(2,BigDecimal.ROUND_HALF_UP);

El resultado será redondoPrecio final --> 5652.26

Anupam avatar Dec 07 '2012 06:12 Anupam