Heim >Java >javaLernprogramm >Warum gibt die Ganzzahldivision in Java 0,0 zurück und wie kann ich ein formatiertes Gleitkommaergebnis erhalten?

Warum gibt die Ganzzahldivision in Java 0,0 zurück und wie kann ich ein formatiertes Gleitkommaergebnis erhalten?

Barbara Streisand
Barbara StreisandOriginal
2024-12-01 04:11:08470Durchsuche

Why Does Integer Division in Java Return 0.0 and How Can I Get a Formatted Floating-Point Result?

Division von Ganzzahlen in Java: 0.0-Ergebnis und String-Formatierung verstehen

In Java führt die Division zweier Ganzzahlen immer zu einem ganzzahligen Wert . Wenn also zwei ganze Zahlen, wie z. B. die Variablen totalOptCount und totalRespCount, geteilt werden, ist das Ergebnis eine ganze Zahl. Dies erklärt, warum der Ausdruck (float)(totalOptCount/totalRespCount); Gibt konsistent 0,0 zurück.

Korrigieren des Ausdrucks für Gleitkomma-Ergebnis

Um ein Gleitkomma-Ergebnis für die Division zu erhalten, müssen Sie mindestens einen Operanden explizit umwandeln ein Gleitkommatyp vor der Divisionsoperation. Dies kann mit dem folgenden Ausdruck erreicht werden:

float percentage = ((float) totalOptCount) / totalRespCount;

Durch Umwandlung des Dividenden (d. h. totalOptCount) in einen Gleitkommatyp wird die Divisionsoperation in Gleitkommaarithmetik ausgeführt, was zu einem Gleitkomma-Typ führt. Punktwert (z. B. 0,33).

Formatieren des Gleitkommawerts in a String

Um den Gleitkommawert-Prozentsatz in das Format „00,00“ zu formatieren und in einen String umzuwandeln, können Sie die Methode String.format() verwenden:

String str = String.format("%2.02f", percentage);

In dieser Formatzeichenfolge gibt %2.02f an, dass die Zeichenfolge als Gleitkommazahl mit einer minimalen Feldbreite von zwei Zeichen und einer Genauigkeit von zwei Dezimalstellen formatiert werden soll Stellen.

Durch Befolgen dieser Korrekturen können Sie sicherstellen, dass die Divisionsoperation das gewünschte Gleitkommaergebnis liefert, das dann zur Anzeige oder für andere Zwecke in eine formatierte Zeichenfolge umgewandelt werden kann.

Das obige ist der detaillierte Inhalt vonWarum gibt die Ganzzahldivision in Java 0,0 zurück und wie kann ich ein formatiertes Gleitkommaergebnis erhalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn