Zahl formatieren
-
Hi,
gibt es irgend eine Klasse (vielleicht mit ner statischen Methode), mit der
ich bestimmen kann, auf wie viele Stellen eine Zahl ausgegeben wird?
Z.B. das die Zahl "13" auf 4 Stellen ausgegeben wird -> "0013".Wüsste zwar wie ich mir das programmiere - aber warum das Rad neu erfinden wenn es das vielleicht schon gibt.
Danke
-
Mit <iostream> so:
std::cout << std::setfill('0') << std::setw(4) << 13;
EDIT: Hab grad gesehen, dass ich mich im Java-Forum befinde.
-
yoyo,
mit C(++) könnte ichs auch
Bräuchte ne Lösung in Java
Danke
-
Naja, ich habs mir jetzt mal selber geproggt.
Falls dennoch jemald ne Methode aus der Java-API kennt wäre ich dankbar.FÜr den Fall das es jemanden interessiert is hier der Code:
public String numberFormat(int digits, int number) { if( number > (Math.pow(10, digits)-1) || number < 0 || digits < 1) throw new IllegalArgumentException(); int steps = 0; for(float f = number; f >= 1.0f; steps++) f/=10; StringBuffer ret = new StringBuffer(); for (int i = 0; i < digits-steps; i++) { ret.append("0"); } return ret.append(number).toString(); }
ciao
-
interpreter schrieb:
Naja, ich habs mir jetzt mal selber geproggt.
Falls dennoch jemald ne Methode aus der Java-API kennt wäre ich dankbar.Mit NumberFormat kann man einiges bzgl. Formatierung machen.
NumberFormat nf = NumberFormat.getInstance(); nf.setMinimumIntegerDigits(5); nf.setGroupingUsed(false); String myNumber = nf.format(1);
bis dänn, O'Dog