Float Division - Nachkommastelle bei 0 ausblenden

Fireball

Aktives Mitglied
Hallo Leute,

ich hab in meiner Anwendung eine Float division

float x = 189,000;
float y = 75,000;

float ergebnis = x / y;

was ist jetzt gerne machen würde ist, sobald bei der Nachkommastelle eine 0 rauskommt will ich diese nicht sehen.

Ich hab mir folgendes überlegt:
Ob die Nachkommastelle 0 ist oder nicht erfahre ich mit dem % Operator. Dann prüf ich auf größer 0, wenn das der Fall ist dann caste ich den Float in ein Integer und geb ihn dann aus.

Wäre das ne gute Lösung? Gibt es vielleicht schon eine Fkt/Klasse die sowas automatisch für einen erledigt?

Danke
 
Java:
float a = 0.01f;
if (a == Math.round(a)) {
	System.out.println("YES");
}

so vielleicht?

EDIT:
In der Annahme, dass Integer:MIN_VALUE < a < Integer.MAX_VALUE
 
Ja, [c]print(float)[/c] gibt normalerweise [c]x.0[/c] aus, dass man erkennt, dass es eine Fliesskommazahl ist (bzw. [c]String.valueOf(float)[/c]). Eigentlich kannst du einfach diese Methode so überschreiben:
Java:
public void print(float f) {
    if (a == Math.round(a)) {
        print((int) f);
    } else {
        super.print(f);
    }
}
 

Neue Themen


Zurück
Oben