Heim > Java > javaLernprogramm > Wie kann ich sicherstellen, dass die Ganzzahldivision in Java ein Gleitkommaergebnis liefert?

Wie kann ich sicherstellen, dass die Ganzzahldivision in Java ein Gleitkommaergebnis liefert?

Patricia Arquette
Freigeben: 2024-12-23 18:21:10
Original
746 Leute haben es durchsucht

How Can I Ensure Integer Division in Java Produces a Floating-Point Result?

Einschränkungen bei der Ganzzahldivision überwinden

In der Programmierung führt die Division zweier Ganzzahlen häufig zu einer weiteren Ganzzahl, wobei der Rest abgeschnitten wird. Dies wird unpraktisch, wenn Sie ein Gleitkommaergebnis benötigen. Lassen Sie uns untersuchen, wie Sie Code ändern können, um sicherzustellen, dass die Division zweier Ganzzahlen stattdessen eine Gleitkommazahl erzeugt.

Originalcode:

class CalcV {
  float v;
  float calcV(int s, int t) {
    v = s / t;
    return v;
  } //end calcV
}

public class PassObject {

  public static void main (String[] args ) {
    int distance;
    distance = 4;

    int t;
    t = 3;

    float outV;

    CalcV v = new CalcV();
    outV = v.calcV(distance, t);

    System.out.println("velocity : " + outV);
  } //end main
}//end class
Nach dem Login kopieren

Lösung:

Um ein Float-Ergebnis zu erhalten, wandeln Sie einen der Operanden in einen Float um, bevor Sie den ausführen Division:

v = (float)s / t;
Nach dem Login kopieren

Casting hat höhere Priorität als Division, wodurch sichergestellt wird, dass die Cast zuerst ausgeführt wird. Der andere Operand wird vom Compiler automatisch in einen Gleitkommawert umgewandelt, da Operationen gemischten Typs zu Gleitkommaoperationen führen.

Aktualisierter Code:

class CalcV {
  float v;
  
  float calcV(int s, int t) {
    v = (float)s / t;
    return v;
  } //end calcV
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich sicherstellen, dass die Ganzzahldivision in Java ein Gleitkommaergebnis liefert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage