Problem mit double-Formatierung

tpgw

Mitglied
Hallo,

Ich habe folgendes Problem, in einem meiner Progs wird mit double werten gerechnet, sprich in cm..
Meine Ausgabe-csvs brauchen aber mm, sprich ich muss zum exportieren von cm in mm umrechnen...

Wie genau mache ich das, mit dem DecimalFormat will das nicht so klappen wie ich mir das denke..

Mal n Beispiel: double d = 210 cm -> 2100 mm <- gewünschte Ausgabe.

Danke!

mfg
 
Meine Ausgabe-csvs brauchen aber mm, sprich ich muss zum exportieren von cm in mm umrechnen...
Wie genau mache ich das, mit dem DecimalFormat will das nicht so klappen wie ich mir das denke..

Mal n Beispiel: double d = 210 cm -> 2100 mm <- gewünschte Ausgabe.

Wo liegt denn genau das Problem? Du hast deinen Wert als double und weißt das dieser die Einheit CM hat. -> ergo einfach die Umrechnung von CM in MM (Wert * 10) einbauen und fertig.

DecimalFormat ist nur zum Formatieren der Ausgabe, dies hat nichts mit der Umrechnung von Einheit X auf Einheit Y zu tun.
 
Hi,

Ok, danke, ich hatte mir gedacht ich könnte mir das sparen alles mit 10 zu multiplizieren etc..
Ich hab mir gedacht das würde mit dem formatieren gehen, dass der das dann einfach um ne Stelle nach vorn schiebt aber dem ist wohl nicht so..

Naja, egal, danke für die schnelle Antwort.

mfg
 
Ich hab mir gedacht das würde mit dem formatieren gehen, dass der das dann einfach um ne Stelle nach vorn schiebt aber dem ist wohl nicht so..

Leider das DecimalFormat macht nichts anders als den Wert über eine Maske zulegen, hierbei kann es aber nicht einfach Stellen dazu geben! Aber sehr wohl eben die Kommastellen um X 0en verlängern oder vorne hinzufügen.

Generell wäre es aber eine Zweckentfremdung der Klasse, von welcher abzuraten ist. Und überlege dir noch rechnest du sehr oft von CM in MM um? Wenn ja wäre es vl sinnvoller in MM zu rechnen und dann hier und dort in CM umzurechnen.

Kleiner Tipp: Für solche Umrechnungen sind kleine statische Methoden hilfreich. Der Vorteil die Rechnung wird an nur einer Stelle ausgeführt (Fehler kann leicht gefunden werden und ist überall gleich), die Methode kann von jeder Stelle im Code augerufen werden.
 

Zurück
Oben