Angesichts dieser Zahlen dezimal:Java Round dezimal - zweite Einzelfall Null
- 150,00
- 150,26
Ich brauche wie dies abzurunden:
- Wenn der zweite Wert des Dezimalteils ist Null (0), dann sollte der neue Wert 150.0 sein
- Wenn t Der zweite Wert des Dezimalteils ist anders als Null (0), dann behält der neue Wert beide Dezimalstellen bei. Beispiel: 150.26
Gibt es eine Rundungsmethode, die das kann?
Danke.
Mein Code hier:
String monto = "150.10";//150.26
String nuevoMonto = "";
String[] valores = monto.split("\\.");
System.out.println("Valores : " + valores);
System.out.println("Valores length: " + valores.length);
for (int i = 0; i < valores.length; i++) {
System.out.println("-->Valor: " + valores[i]);
}
if (valores.length == 2) {
nuevoMonto = valores[1];
System.out.println("Nuevomonto: " + nuevoMonto);
if (nuevoMonto.length() == 2) {
System.out.println("Dos posiciones decimales");
System.out.println(nuevoMonto.indexOf("0"));
if (nuevoMonto.indexOf("0") == 1) {
nuevoMonto = valores[0] + "." + nuevoMonto.substring(0, 1);
}
}
}
System.out.println("Nuevo monto: " + nuevoMonto);
Schwer zu wissen, was Sie wirklich wollen, bitte zeigen Sie auch, was Sie bisher versucht haben. Wenn Sie mit Geld arbeiten, könnte dies eine ziemlich willkürliche Art sein, Werte zu runden. '150.10 -> 150.10 ... 150.09 -> 150.00' wäre ein ziemlich großer Unterschied. Also, warum willst du diesen Weg machen? – hamena314
@ hamena314 er sagte ** Sekunde ** Wert der Dezimalstelle ... Also 150.10 -> 150.1 und 150.09 -> 150.09 –
Was ist mit 150.101? Oder vielleicht kann das nicht passieren? – Stefan