Heim >Java >javaLernprogramm >Warum gibt die Ganzzahldivision in Java 0,0 zurück und wie kann ich ein Gleitkommaergebnis erhalten?
Division von ganzen Zahlen in Java: Warum sie 0,0 zurückgibt
Beim Durchführen einer Division zwischen zwei ganzen Zahlen in Java, wie im bereitgestellten Beispiel wo totalOptCount und totalRespCount sind beide Ganzzahlen, das Ergebnis wird automatisch auf eine Ganzzahl reduziert. Dies bedeutet, dass jeder Bruchteil der Division verworfen wird. Infolgedessen ist die Prozentvariable, die als Float deklariert, aber mit dem Ergebnis der Division initialisiert wird, immer 0,0.
So erhalten Sie ein Gleitkomma-Ergebnis
Um ein Gleitkomma-Ergebnis zu erhalten, muss mindestens einer der Operanden in der Division in einen Gleitkomma-Typ umgewandelt werden. In Ihrem Fall können Sie totalOptCount wie folgt in einen Gleitkommawert umwandeln:
float percentage = ((float) totalOptCount) / totalRespCount;
Dadurch wird sichergestellt, dass die Division in Gleitkommaarithmetik durchgeführt wird und der Bruchteil im Ergebnis erhalten bleibt.
Prozentsatz formatieren
Um die Prozentvariable in das Format „00,00“ zu formatieren und zu konvertieren Um es in einen String umzuwandeln, können Sie die Methode String.format verwenden:
String str = String.format("%2.02f", percentage);
Der Platzhalter %2.02f gibt an, dass der Gleitkommawert mit einer Feldbreite von 2 Zeichen und einer Genauigkeit von 2 formatiert werden soll Dezimalstellen. Dies führt zu einer Zeichenfolge mit dem Prozentsatz im Format „00,00“.
Das obige ist der detaillierte Inhalt vonWarum gibt die Ganzzahldivision in Java 0,0 zurück und wie kann ich ein Gleitkommaergebnis erhalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!