Add cast
This commit is contained in:
@@ -19,7 +19,7 @@ public class PrimitiveDatentypen {
|
|||||||
// Befehl für eine Textausgabe auf dem Bildschirm:
|
// Befehl für eine Textausgabe auf dem Bildschirm:
|
||||||
System.out.println("Hallo Welt");
|
System.out.println("Hallo Welt");
|
||||||
|
|
||||||
// Genug mit dem Into...
|
// Genug mit dem Intro...
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
// In Java gibt es Variablen, um Daten temporär zu speichern. Diese bekommen immer einen festen Typen zugewiesen,
|
// In Java gibt es Variablen, um Daten temporär zu speichern. Diese bekommen immer einen festen Typen zugewiesen,
|
||||||
@@ -69,6 +69,31 @@ public class PrimitiveDatentypen {
|
|||||||
// / Division
|
// / Division
|
||||||
// + Addition
|
// + Addition
|
||||||
// - Subtraktion
|
// - Subtraktion
|
||||||
|
|
||||||
|
// Beispiele:
|
||||||
|
int ganzzahlAddition = 1 + 1;
|
||||||
|
|
||||||
|
int ganzzahlMultiplikation = 2 * 2;
|
||||||
|
System.out.println("Ergebnisse: Addition: " + ganzzahlAddition + " Multiplikation: " + ganzzahlMultiplikation);
|
||||||
|
|
||||||
|
// Obacht! Ganzzahl Division kann schief laufen. Bsp.:
|
||||||
|
|
||||||
|
// Rechne 2 / 4 ==> Ergebnis ist keine Ganzzahl.
|
||||||
|
int obachtDivision = ganzzahlAddition / ganzzahlMultiplikation;
|
||||||
|
System.out.println("Erwarte Zahl 1/2, Ergebnis: " + obachtDivision);
|
||||||
|
|
||||||
|
// Begründung: Beide Zahlen sind Integer, weshalb eine Integer-Division ausgeführt wird.
|
||||||
|
// Dabei wird das Ergebnis ganz normal berechnet, jedoch alle Zahlen hinter dem Komma abgeschnitten.
|
||||||
|
// Bspw. würde 1.9 nicht zu 2 gerundet werden, sondern die 9 abgeschnitten, also Ergebnis 1.
|
||||||
|
|
||||||
|
// Wie kann das behoben werden?
|
||||||
|
// Durch Casting!
|
||||||
|
// Casting bedeutet gießen auf Deutsch. Das heißt man "gießt" einen Datentypen in einen anderen.
|
||||||
|
// In die größer Richtung (kleiner nach größer, also bspw. int --> float --> double) geht das auch ohne Verluste.
|
||||||
|
// Die andere Richtung geht auch, jedoch mit Informationsverlust.
|
||||||
|
|
||||||
|
double division = ganzzahlAddition / (double)ganzzahlMultiplikation;
|
||||||
|
System.out.println("Ergebnis Division: " + division);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user