BigDecimal, Position des Kommas

RungetSvohu

Bekanntes Mitglied
Hallo Leute,

kann man bei einem BigDecimal-Objekt auch ohne Zerlegung in den String über toString() feststellen, wie viele Ziffern vor und wie viele nach dem Komma sitzen?
 
Ja, und zwar auf mindestens 20 verschiedene Arten. Die Frage ist nur, ob das dann eleganter ist. Spontan sehe ich keine Methode, mit der das viel besser gehen würde als eben mit toString() und einem Split auf den Punkt zwischen Vor- und Nachkommastelle.

Wenn es dir darum geht den Code möglichst schlank zu halten, weil du sowas in deinem Programm ständig machst, dann schreib dir ne kleine Hilfsmethode dafür.
 
Es gibt aber nur eine "richtige" Art. [c]toString()[/c] sollte man bei Big* nach Möglichkeit schon vermeiden, weil diese Operation extrem teuer ist.

[c]precision()[/c] gibt die Anzahl aller Stellen an und [c]scale()[/c] die Anzahl der Stellen nach dem Komma. Entsprechend ist die Differenz die Zahl der Stellen vor dem Komma.
 

Neue Themen


Zurück
Oben