0

Actualmente estoy tabajando con BigDecimal para realizar operaciones básicas como sumar o restar, el problema es que no me retorna el valor que espero cuando utilizo valores númericos al crear el objeto de BigDecimal:

main method

Pero como resultado obtengo:

result BigDecimal

Dentro de mi clase Cuenta el costructor lo tengo así:

public Cuenta(String persona, BigDecimal saldo) {
        this.persona = persona;
        this.saldo = saldo;
    }

y el método credito:

 public void credito(BigDecimal monto){
    BigDecimal nuevosaldo = this.saldo.add(monto);
    this.saldo = nuevosaldo;
    }
Pedro Robles
  • 123
  • 1
  • 4
  • 15

1 Answers1

1

Puedes ajustar la precisión decimal de tu objeto BigDecimal . Simplemente prueba monto.setScale(2, RoundingMode.HALF_EVEN);

Tambien puedes inicializarlo así:

new BigDecimal("1000.23")

Fuente -> https://blogs.oracle.com/javamagazine/post/four-common-pitfalls-of-the-bigdecimal-class-and-how-to-avoid-them