Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> Java

Java Type Casting meistern: Von Widening zu Narrowing und darüber hinaus

Java Type Casting

Dieser Leitfaden entmystifiziert Java Type Casting, deckt seine primären Formen ab und illustriert jede mit klaren Beispielen.

Bevor Sie in Java Type Casting eintauchen, stellen Sie sicher, dass Sie Javas Datentypen verstehen.


Type Casting

Der Prozess der Konvertierung des Wertes eines Datentyps (int, float, double, etc.) in einen anderen wird als Type Casting bezeichnet.

Java bietet 13 Konvertierungstypen, aber dieses Tutorial fokussiert sich auf die zwei Kernkategorien:

  1. Widening Type Casting
  2. Narrowing Type Casting

Für eine umfassende Liste siehe Javas offizielle Type Conversion Dokumentation.


Widening Type Casting

Bei Widening Type Casting fördert Java automatisch einen kleineren Primitivtyp zu einem größeren, wodurch kein Datenverlust entsteht.

Beispiel: int zu double konvertieren

class Main {
    public static void main(String[] args) {
        int num = 10;
        System.out.println("Der Integer-Wert: " + num);
        double data = num;
        System.out.println("Der Double-Wert: " + data);
    }
}

Ausgabe

Der Integer-Wert: 10
Der Double-Wert: 10.0

Dies demonstriert, wie eine int Variable vor der Zuweisung zu double promoviert wird. Die automatische Natur dieser Konvertierung ist der Grund, warum sie auch implizites Type Casting genannt wird.

Hinweis: Widening-Konvertierungen sind sicher und werden vom Compiler durchgeführt.


Narrowing Type Casting

Bei Narrowing Type Casting müssen Sie einen größeren Primitivtyp explizit in einen kleineren casten, indem Sie Klammern verwenden.

Beispiel: double zu int konvertieren

class Main {
    public static void main(String[] args) {
        double num = 10.99;
        System.out.println("Der Double-Wert: " + num);
        int data = (int)num;
        System.out.println("Der Integer-Wert: " + data);
    }
}

Ausgabe

Der Double-Wert: 10.99
Der Integer-Wert: 10

Der Cast (int) schneidet den Bruchteil ab, was verdeutlicht, warum diese Konvertierung als explizites Type Casting betrachtet wird und zu Datenverlust führen kann.

Hinweis: Java führt Narrowing-Konvertierungen nicht automatisch durch.


Im Folgenden finden Sie praktische Konvertierungen zwischen Primitiven und Strings.

Beispiel 1: int zu String

class Main {
    public static void main(String[] args) {
        int num = 10;
        System.out.println("Der Integer-Wert ist: " + num);
        String data = String.valueOf(num);
        System.out.println("Der String-Wert ist: " + data);
    }
}

Ausgabe

Der Integer-Wert ist: 10
Der String-Wert ist: 10

Hier konvertiert String.valueOf() den Integer in seine textuelle Repräsentation.


Beispiel 2: String zu int

class Main {
    public static void main(String[] args) {
        String data = "10";
        System.out.println("Der String-Wert ist: " + data);
        int num = Integer.parseInt(data);
        System.out.println("Der Integer-Wert ist: " + num);
    }
}

Ausgabe

Der String-Wert ist: 10
Der Integer-Wert ist: 10

Das Parsing basiert auf Integer.parseInt(). Wenn der String nicht geparst werden kann, wird eine NumberFormatException geworfen.

Hinweis: Validieren Sie Eingaben, um Laufzeit-Exceptions zu vermeiden.

Java

  1. Python-Typkonvertierung & Casting meistern: Umfassender Leitfaden
  2. Java Primitive Datentypen: Vollständiger Leitfaden mit Beispielen
  3. Java Operatoren meistern: Typen, Syntax und praktische Beispiele
  4. Java Kommentare: Typen, Verwendung und Best Practices
  5. Java Enhanced For-Schleife meistern: Syntax, Beispiele und Best Practices
  6. Java-Schnittstellen meistern: Konzepte, Implementierung und Best Practices
  7. Java-Kapselung meistern: Praktischer Leitfaden zum Datenverbergen
  8. Java Try-With-Resources meistern: Automatisches Ressourcenmanagement erklärt
  9. Java Annotations erklärt: Typen, Platzierung und praktische Beispiele
  10. Java Type Casting meistern: Von Widening zu Narrowing und darüber hinaus