SemaTrain Logo Ein Fachportal von SemaTrain

Datentypen & Variablen in Java

Sie bauen das Fundament: Datentypen, Variablen und sichere Vergleiche – mit Beispielen aus einem SemaTrain-Schulungskontext.

Hinweis: Werte in Codebeispielen sind Beispieldaten (nicht verbindlich).

Java Grundlagen Schulung – Kursbezug

Dieses Kapitel ist Teil des Lernpfads zur Java Grundlagen Schulung. Termine & Buchung laufen über SemaTrain.de.

Hinweis: Zahlenwerte in Codebeispielen sind Beispieldaten.

Die folgenden Beispiele beziehen sich auf typische Daten aus einem SemaTrain-Schulungskontext (Kursname, Ort/remote, Dauer, Preis) – die Zahlen sind Beispielwerte.

Worum geht’s?

Lehr-Lernziele

Nach diesem Kapitel können Sie …

Wie Sie die Ziele erreichen: Die Codebeispiele zeigen die Typwahl im Kurskontext, das Quiz prüft LZ1–LZ3, und die Praxisaufgaben verlangen eine vollständige Mini-Modellierung (Typwahl + Ausgabe + sicherer String-Vergleich).

Alle Datentypen – kompakt

Java hat 8 primitive Datentypen. Alles andere (z.B. String, Integer, Arrays, eigene Klassen) sind Referenztypen.

Zahlen & Zeichen

  • byte, short, int, long (Ganzzahlen)
  • float, double (Kommazahlen)
  • char (ein Zeichen)

Wahr/Falsch

  • boolean (true/false)

Wrapper-Typen wie Integer oder Double sind Objekte (nützlich in Collections).

Kursbeispiele (SemaTrain-Kontext)

Wir modellieren typische Informationen, die in einer Schulungsorganisation vorkommen. Beispielwerte sind bewusst allgemein gehalten.

Beispiel 1: Kursdaten als Variablen (LZ2 + LZ3) (Java)
public class KursDatenBeispiel {
  public static void main(String[] args) {
    String anbieter = "SemaTrain";
    String kursName = "Java Grundlagen Schulung";
    String ort = "Hamburg";
    String modus = "Online"; // "Online" oder "Praesenz"

    int dauerTage = 3;          // Beispiel: 2–5 Tage
    double preisEuro = 1490.00; // Beispielwert (nicht verbindlich)

    boolean istOnline = modus.equals("Online");

    System.out.println("Anbieter: " + anbieter);
    System.out.println("Kurs: " + kursName);
    System.out.println("Format: " + (istOnline ? "Online" : "Praesenz"));
    System.out.println("Ort: " + (istOnline ? "remote" : ort));
    System.out.println("Dauer: " + dauerTage + " Tage");
    System.out.println("Preis (Beispiel): " + preisEuro + " €");

    double tagespreis = preisEuro / dauerTage;
    System.out.println("Tagespreis (Beispiel): " + tagespreis + " €");
  }
}
Beispiel 2: Alle 8 primitiven Datentypen (LZ1) (Java)
public class AllePrimitivesInKurz {
  public static void main(String[] args) {
    byte bewertungSterne = 5;
    short teilnehmerMax = 25;
    int dauerTage = 3;
    long kursId = 202602160001L;

    float rabatt = 0.10f;
    double preisEuro = 1490.00;

    char kursLevel = 'G';
    boolean istOnline = true;

    System.out.println("Sterne: " + bewertungSterne);
    System.out.println("Max TN: " + teilnehmerMax);
    System.out.println("Dauer: " + dauerTage);
    System.out.println("Kurs-ID: " + kursId);
    System.out.println("Rabatt: " + rabatt);
    System.out.println("Preis: " + preisEuro);
    System.out.println("Level: " + kursLevel);
    System.out.println("Online: " + istOnline);
  }
}
Beispiel 3: Strings korrekt vergleichen (LZ3) (Java)
public class StringVergleich {
  public static void main(String[] args) {
    String a = new String("Online");
    String b = new String("Online");

    System.out.println(a == b);        // false (Referenzen)
    System.out.println(a.equals(b));   // true  (Inhalt)
  }
}

Praxisaufgabe (Mini)

Sie bauen eine kleine Konsolen-Ausgabe für Schulungsdaten. Ziel: richtige Typwahl + saubere Ausgabe.

Beitrag zu den Lehr-Lernzielen: LZ2 (Variablen deklarieren/initialisieren) + LZ3 (sicherer String-Vergleich + typische Stolperfallen), optional auch LZ1 durch bewusste Typwahl.

  1. (LZ2) Variablen für Anbieter, Kursname, Format (Text), Ort, Dauer (Tage), Preis (Beispielwert).
  2. (LZ2) Eine Zeile ausgeben: „Kurs: … | Format: … | Ort: … | Dauer: … | Preis: …“
  3. (LZ3, Bonus) Wenn „Online“, 10% Rabatt berechnen (mit equals() prüfen) und Endpreis ausgeben.
Lösungsvorschlag: Ausgabe + Rabatt (LZ2 + LZ3, Beispielwerte) (Java)
public class KursAusgabePraxis {
  public static void main(String[] args) {
    String anbieter = "SemaTrain";
    String kursName = "Java Grundlagen Schulung";
    String format = "Online";
    String ort = "Hamburg";

    int dauerTage = 3;
    double preisEuro = 1490.00;

    boolean istOnline = format.equals("Online");
    double rabatt = istOnline ? 0.10 : 0.0;
    double endpreis = preisEuro * (1 - rabatt);

    System.out.println(
      "Anbieter: " + anbieter +
      " | Kurs: " + kursName +
      " | Format: " + format +
      " | Ort: " + (istOnline ? "remote" : ort) +
      " | Dauer: " + dauerTage + " Tage" +
      " | Preis (Beispiel): " + endpreis + " €"
    );
  }
}
Optional: 3 typische Stolperfallen (LZ3)
  • Integer-Division: 5/2 ergibt 2 (weil beide int sind)
  • Casting: (int) 87.9 wird 87
  • null: nur bei Referenzen, nicht bei Primitives

Kurz-Takeaways

Quiz: Datentypen & Variablen (Kurs-Kontext)

1. Welche Liste enthält genau die primitiven Datentypen? (LZ1)

2. Wie vergleichen Sie zwei Strings (z.B. "Online") inhaltlich korrekt? (LZ3)

3. Warum ist 5/2 oft 2 statt 2.5? (LZ3)

4. Welcher Typ passt am besten zu „Kursdauer in Tagen“? (LZ2)

Praxisaufgabe

SemaTrain-Use-Case: Mini-Profil (Teilnehmer + Kurs)

Sie modellieren typische Schulungsdaten – mit Beispielwerten – und üben sichere Typwahl.

Beitrag zu den Lehr-Lernzielen:
LZ1 (Primitives/Wrappers bewusst wählen), LZ2 (Deklaration/Initialisierung), LZ3 (String-Vergleich & Referenzen + typische Stolperfallen).

Aufgabe

Hinweis: Preis/Dauer sind Beispielwerte – echte Kursdaten kommen aus Planung/Angebot.

Lösung anzeigen
Lösung: Mini-Profil (LZ1–LZ3) (Java)
public class MiniProfil {
  public static void main(String[] args) {

    // Teilnehmer (LZ2)
    String name = "Max Beispiel";
    String firma = "Beispiel GmbH";
    int erfahrungsjahre = 2;

    // Kurs (Beispielwerte) (LZ2)
    String kursName = "Java Grundlagen Schulung";
    String format = "Online";          // "Online" oder "Praesenz"
    String ort = "Hamburg";            // nur relevant bei Praesenz
    int dauerTage = 3;
    double preisEuro = 1490.00;

    // Extras (LZ1)
    char kursLevel = 'G';                // G = Grundlagen, F = Fortgeschritten
    boolean istOnline = format.equals("Online"); // LZ3: equals statt ==

    // Bonus: Rabatt (LZ3)
    double rabatt = istOnline ? 0.10 : 0.0;
    double endpreis = preisEuro * (1 - rabatt);

    // Ausgabe (LZ2)
    System.out.println(
      "TN: " + name + " (" + firma + ", " + erfahrungsjahre + "J)" +
      " | Kurs: " + kursName +
      " | Level: " + kursLevel +
      " | Format: " + (istOnline ? "Online" : "Praesenz") +
      " | Ort: " + (istOnline ? "remote" : ort) +
      " | Dauer: " + dauerTage + " Tage" +
      " | Preis (Beispiel): " + endpreis + " €"
    );
  }
}