Heim  >  Artikel  >  Java  >  So verwenden Sie Pattern Matching für den Typmustervergleich in Java 14

So verwenden Sie Pattern Matching für den Typmustervergleich in Java 14

王林
王林Original
2023-07-31 12:01:13843Durchsuche

So verwenden Sie Pattern Matching für den Typmustervergleich in Java 14

Einführung:
Java 14 führt eine neue Funktion ein: Pattern Matching, ein leistungsstarkes Tool für den Typmustervergleich zur Kompilierungszeit. In diesem Artikel wird erläutert, wie Pattern Matching für den Typmustervergleich in Java 14 verwendet wird, und es werden Codebeispiele bereitgestellt.

  1. Verstehen Sie das Konzept des Mustervergleichs.
    Beim Mustervergleich handelt es sich um eine Funktion, die einen Mustervergleich basierend auf dem Wert und Typ eines Ausdrucks zur Kompilierzeit durchführt. Es vereinfacht den Prozess des Schreibens bedingter Anweisungen erheblich und bietet prägnanteren und lesbareren Code. In Java wird Pattern Matching mithilfe des Operators „instanceof“ und des neuen Schlüsselworts „var“ implementiert.
  2. Grundlegende Verwendung
    In Java 14 können Sie den Operator „instanceof“ und das neue Schlüsselwort „var“ für den Typmusterabgleich verwenden. Hier ist ein einfaches Beispiel:
public static void main(String[] args) {
    Object obj = "Hello, World";
    if (obj instanceof String str) {
        System.out.println("The object is of type String: " + str);
    } else {
        System.out.println("The object is not of type String");
    }
}

In diesem Beispiel deklarieren wir zunächst eine Variable „obj“ vom Typ Object, deren Wert „Hello, World“ ist. Anschließend verwenden wir den Operator „instanceof“, um „obj“ mit einem String zu vergleichen und das Ergebnis einer neuen Variablen „str“ vom Typ String zuzuweisen. Wenn die Übereinstimmung erfolgreich ist, das heißt, das Objekt vom Typ String ist, können wir die Variable „str“ im if-Anweisungsblock verwenden. Andernfalls können wir den Code des else-Anweisungsblocks ausführen.

  1. Verwenden Sie die Switch-Anweisung für den Mustervergleich.
    Zusätzlich zur if-Anweisung können wir auch die Switch-Anweisung für den Mustervergleich verwenden. Hier ist ein Beispiel mit einer Switch-Anweisung:
public static void main(String[] args) {
    Object obj = "Hello, World";
    switch (obj) {
        case String str -> System.out.println("The object is of type String: " + str);
        case Integer integer -> System.out.println("The object is of type Integer: " + integer);
        default -> System.out.println("The object is not of type String or Integer");
    }
}

In diesem Beispiel führen wir einen Mustervergleich basierend auf dem Objekttyp durch. Wenn das Objekt vom Typ String ist, können wir die Variable „str“ in der Case-Klausel verwenden; wenn das Objekt vom Typ Integer ist, können wir die Variable „integer“ in der Case-Klausel verwenden; Code.

  1. Weitere Mustervergleichsbeispiele
    Zusätzlich zum einfachen Typmustervergleich kann der Mustervergleich auch mit anderen Sprachfunktionen verwendet werden, um komplexe Situationen besser zu bewältigen. Hier ist ein weiteres Beispiel:
public static void main(String[] args) {
    Object obj = "Hello, World";
    if (obj instanceof String str && str.length() > 5) {
        System.out.println("The object is of type String with length greater than 5: " + str);
    } else if (obj instanceof Integer integer && integer > 10) {
        System.out.println("The object is of type Integer greater than 10: " + integer);
    } else {
        System.out.println("The object is not of the expected type or does not meet the condition");
    }
}

In diesem Beispiel vergleichen wir zunächst das Objekt mit dem Typ String und prüfen, ob seine Länge größer als 5 ist. Wenn die Übereinstimmung erfolgreich ist, können wir die Variable „str“ im if-Anweisungsblock verwenden. Andernfalls vergleichen wir das Objekt weiterhin mit dem Typ „Integer“ und prüfen, ob sein Wert größer als 10 ist. Wenn die Übereinstimmung erfolgreich ist, können wir die Variable „integer“ im else if-Anweisungsblock verwenden. Wenn schließlich keine der Bedingungen erfüllt ist, können wir den Code im else-Anweisungsblock ausführen.

Fazit:
Pattern Matching ist eine leistungsstarke Funktion, die in Java 14 eingeführt wurde und für den Typmusterabgleich zur Kompilierungszeit verwendet werden kann. In diesem Artikel wird die grundlegende Verwendung von Pattern Matching vorgestellt und Codebeispiele bereitgestellt. Durch die Verwendung von Pattern Matching können wir prägnanteren und lesbareren Code schreiben und dadurch die Wartbarkeit und Skalierbarkeit des Codes verbessern. Daher wird empfohlen, bei der Verwendung von Java 14 und höher die Vorteile des Mustervergleichs voll auszuschöpfen.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Pattern Matching für den Typmustervergleich in Java 14. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn