Ich versuche, eine Zeichenfolge zu formatieren, um Kommas zwischen dreistelligen Gruppen hinzuzufügen
EG:
%Vor%Ich versuche herauszufinden, wie man es mit DecimalFormat macht, bis zu diesem Punkt habe ich ein eigenes Skript benutzt, das übermäßig kompliziert erscheint. Ich kann nicht herausfinden, wie es geht, mit # werden einfach die abschließenden Nullen versteckt und mit 0 werden sie zu der Zahl hinzugefügt.
Das versuche ich gerade jetzt:
%Vor%Ich bin sicher, dass es einfach sein muss, aber ich bin nicht sicher, wie es geht. Ich muss es nicht mit DecimalFormat machen, ich dachte nur, es wäre der leichtere Weg. Wie kann ich einfach die Kommas hinzufügen, ohne die Dezimalstellen zu verändern?
Sie sollten ein NumberFormat-Objekt verwenden und es für die Gruppierung festlegen. Etwas wie
%Vor%was zurückgibt:
%Vor%Ein Vorteil davon ist, dass die Lösung länderspezifisch sein kann.
Bearbeitet
Zeigt nun ein Beispiel mit einem DecimalFormat-Objekt. Beachten Sie, dass Sie die Gruppierungsgröße festlegen sollten, wenn Sie diese verwenden.
Ich konnte keine der anderen Lösungen funktionieren lassen, einige um die Dezimalstellen herum, einige fügen nachgestellte Nullen hinzu oder einige entfernen nachgestellte Nullen.
Ich habe nicht vor, meine eigene Antwort zu akzeptieren, aber ich werde mein Skript veröffentlichen, falls jemand es nützlich findet.
%Vor%Die einfachste Lösung
Warum verwenden Sie nicht die comma ,
flag mit printf
.
Die Ausgabe wird
sein %Vor% Und die gute Nachricht: Das tatsächlich generierte Trennzeichen hat is specific to the user’s locale
Tags und Links java decimalformat