***** Übungen: Java - Casting ***** Java-Casting-1: Implizites Casting, Fehler finden Das folgende Listing enthält 6 Fehler, die mit fehlerhaftem implizitem Casting zusammenhängen. Welche sind es? (Bitte NICHT mit einer IDE überprüfen!) --- Java-Code Start --- int alter = 83; float schuhgroesse = 39.5F; float kontostand = 1925.30F; float zinssatz = 3.5F; long anzahlGehirnzellenBeiGeburt = 5000000000L; int verlustGehirnzellenProJahr = 500000; double atomGewichtSynapsen = 1.34823e-300; int anzahlGehirnzellenHeute1 = anzahlGehirnzellenBeiGeburt - verlustGehirnzellenProJahr * alter; long anzahlGehirnzellenHeute2 = anzahlGehirnzellenBeiGeburt - verlustGehirnzellenProJahr * alter; double anzahlGehirnzellenHeute3 = anzahlGehirnzellenBeiGeburt - verlustGehirnzellenProJahr * alter; double zusammenhangHirnSchuhe1 = schuhgroesse / anzahlGehirnzellenBeiGeburt; float zusammenhangHirnSchuhe2 = schuhgroesse / anzahlGehirnzellenBeiGeburt; long zusammenhangHirnSchuhe1 = schuhgroesse / anzahlGehirnzellenBeiGeburt; double kontostandIn10Jahren1 = 10 * zinssatz*kontostand; int kontostandIn10Jahren2 = 10 * zinssatz*kontostand; long kontostandIn10Jahren3 = 10 * zinssatz*kontostand; long gesamtGewicht1 = anzahlGehirnzellenBeiGeburt*atomGewichtSynapsen; double gesamtGewicht2 = anzahlGehirnzellenBeiGeburt*atomGewichtSynapsen; float gesamtGewicht3 = anzahlGehirnzellenBeiGeburt*atomGewichtSynapsen; --- Code Ende --- @@@ Java-Casting-2: Implizites Casting, Datentyp bestimmen Ergänzen Sie die Datentypen der Ergebnisvariablen im folgenden Listing, zuerst OHNE IDE direkt hier im Dokument. Überprüfen Sie dann in der IDE, ob Sie korrekt gearbeitet haben. --- Java-Code Start --- int zahl1 = 100; int zahl2 = 11; float zahl3 = 1.5F; long zahl4 = 10000000000L; double zahl5 = 4.23224e-100; // Ergänzen Sie den Datentyp vor den Ergebnisvariablen // z.B. int ergebnis17 = ... ergebnis1 = zahl1 + zahl2; ergebnis2 = zahl1 / zahl2; ergebnis3 = zahl1 * zahl3; ergebnis4 = zahl4 + zahl2; ergebnis5 = zahl4 + zahl3; ergebnis6 = zahl4 + zahl5; ergebnis7 = zahl4 * zahl5; ergebnis8 = zahl4 - zahl4 - zahl3; ergebnis9 = zahl4 * zahl3; --- Code Ende --- @@@ Java-Casting-3: Explizites Casting Casten Sie die Terme explizit in den jeweils als Kommentar genannten Datentyp. Überprüfen Sie die Lauffähigkeit des Programms. Überprüfen Sie das Ergebnis der ersten Rechnung (ergebnis1). Versuchen Sie herauszubekommen, nach welcher Regel sich der Datenverlust bestimmen lässt, indem Sie den Initialwert von zahl1 variieren. --- Java-Code Start --- int zahl1 = 1000000000; int zahl2 = 11; float zahl3 = 1.5F; long zahl4 = 10000000000L; double zahl5 = 4.23224e-100; short ergebnis1 = zahl1 + zahl2; int ergebnis2 = zahl1 / zahl2; int ergebnis3 = zahl1 * zahl3; int ergebnis4 = zahl4 + zahl2; long ergebnis5 = zahl4 + zahl3; float ergebnis6 = zahl4 + zahl5; float ergebnis7 = zahl4 * zahl3; long ergebnis8 = zahl4 - zahl4 - zahl3; int ergebnis9 = zahl4 * zahl3; --- Code Ende ---