Variablendeklarationen in Java

Wie wir bereits wissen, lassen sich mit Variablen Daten speichern, die dann vom Programm gelesen oder geschrieben werden können.

Um Variablen zu nutzen, müssen Sie vor Ihrer Ausführung deklariert werden. Die Schreibweisen sind immer dieselben: Hinter dem Typnamen folgt der Name der Variablen.

 

Beispiel:

  • Typname Variablenname;
  • oder Typname Variablenname_1, Variablenname_2, Variablenname_3;

    Es können also auch mehrere Variablen des gleichen Typs durch Komma getrennt deklariert werden.

 

Hier ein kleines Programm, welches den Mittelwert zweier Zahlen berechnen und ausgeben soll:

public class Main 
{
    public static void main(String[] args) 
    {
      
        int a, b;     // Deklaration der Variablen a und b vom Typ Integer
        
        a = 5;     //Weist den Wert 5 der Variable a zu
        b = 4;     //Weist den Wert 4 der Variable b zu
        
        System.out.println("Der Mittelwert = " + (a+b)/2);     //berechnet den Mittelwert (a+b)/2 und gibt ihn aus          
    }
}

 

 

Der Mittelwert = 4

 

Wieso 4?

5+4 = 9 und 9/2 = 4.5!

 

Warum erhalten wir als Ergebnis 4 und nicht 4.5?

Der Grund liegt in der falschen Deklaration unserer Variablen! Wir haben den Typ int (Integer) zugewiesen und Integer ist ein Ganzzahliger Datentyp.

Es werden hier also nur Ganzzahlige Daten verarbeitet und die Nachkommastellen werden einfach weggeschnitten!

 

Ändern wir nun unser Programm etwas ab und deklarieren die Variablen a und b vom Typ double.

public class Main 
{
    public static void main(String[] args) 
    {
      
        double a, b;     // Deklaration der Variablen a und b vom Typ double
        
        a = 5;     //Weist den Wert 5 der Variable a zu
        b = 4;     //Weist den Wert 4 der Variable b zu
        
        System.out.println("Der Mittelwert = " + (a+b)/2);     //berechnet den Mittelwert (a+b)/2 und gibt ihn aus          
    }
}

 

 

Der Mittelwert = 4.5

 

Voilà, das Ergebnis ist nun korrekt!

Um solche Fehler zu vermeiden, sollten Sie künftig die Typen double oder float verwenden. Diese Typen benötigen zwar etwas mehr Speicherplatz, aber dies ist bei kleineren Programmen zu vernachlässigen.

 

Was passiert, wenn wir eine Zahl ausgeben möchten, diese aber nicht deklarieren?

 

Beispiel:

System.out.println( 12345678915 );

Hier ist auf den ersten Blick kein Fehler zu erkennen. Aber, wenn wir das compilieren, dann regt sich unser Compiler auf!

Grund ist, dass alle Datentypen ohne explizite Angabe der Größe automatisch als int angenommen werden. int ist 32 Bit lang und das führt zur Fehlermeldung, da unsere Zahl außerhalb des Wertebereiches von int liegt.

Wir können unsere Zahl ganz einfach deklarieren, indem wir ein L (für den Datentyp long) am Ende der Zahl anhängen.

 

Beispiel:

System.out.println( 12345678915L );

Nun hat unser Compiler keinen Einwand mehr und gibt die Zahl aus.

Das Ganze funktioniert auch für die Typen float und double. Für float hängen wir ein f oder F und für double ein d oder D an.

Wir werden an dieser Stelle keine weiteren Deklarationen von Variablen mehr durchführen, denn diese kommen in den folgenden Kapiteln ohnehin vor.