This commit is contained in:
2022-01-22 23:40:01 +01:00
parent fff908ccb3
commit 8084702326

View File

@@ -19,7 +19,7 @@ public class PrimitiveDatentypen {
// Befehl für eine Textausgabe auf dem Bildschirm:
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,
@@ -69,6 +69,31 @@ public class PrimitiveDatentypen {
// / Division
// + Addition
// - 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);
}
}