Heim  >  Artikel  >  Java  >  So verwenden Sie Pattern Matching zum Ermitteln und Konvertieren von Datentypen in Java 14

So verwenden Sie Pattern Matching zum Ermitteln und Konvertieren von Datentypen in Java 14

WBOY
WBOYOriginal
2023-07-29 14:13:261357Durchsuche

So verwenden Sie Pattern Matching zum Bestimmen und Konvertieren von Datentypen in Java 14

In Java 14 wird Pattern Matching für Instanzen (dh „Mustervergleich“) eingeführt, das die Bestimmung und Konvertierung von Datentypen vereinfachen kann. Diese neue Funktion kann den Code prägnanter und lesbarer machen und gleichzeitig die Entwicklungseffizienz verbessern. In diesem Artikel wird erläutert, wie Sie mit Pattern Matching Datentypen in Java 14 ermitteln und konvertieren, und es werden Codebeispiele bereitgestellt.

1. Mustertypbeurteilung

Mit der Musterübereinstimmung für „instanceof“ können Sie den „instanceof“-Operator direkt mit der Variablendeklaration verwenden. Die vorherige Schreibweise bestand darin, zuerst eine Typbeurteilung und dann eine Typkonvertierung durchzuführen, wie unten gezeigt:

if(obj instanceof String) {
    String str = (String) obj;
    // do something with str
}

In Java 14 können wir die Mustertypbeurteilung direkt verwenden, und der Code lautet wie folgt:

if(obj instanceof String str) {
    // do something with str
}

Auf diese Weise Wir können nicht nur feststellen, ob obj vom Typ String ist, sondern auch den Typ String erzwingen und die Variable str direkt in der if-Anweisung verwenden.

2. Mustertypkonvertierung

Zusätzlich zur Typbeurteilung bietet Pattern Matching auch die Funktion der Mustertypkonvertierung, mit der Objekte problemlos in bestimmte Typen konvertiert werden können. Die vorherige Schreibmethode bestand darin, die erzwungene Typkonvertierung zu verwenden, wie unten gezeigt:

if(obj instanceof String) {
    String str = (String) obj;
    // do something with str
}

In Java 14 können wir die obige Schreibmethode durch die Mustertypkonvertierung ersetzen. Der Code lautet wie folgt:

if(obj instanceof String str) {
    // do something with str
}

Diese Schreibmethode kann nicht nur führt eine Typbeurteilung durch, konvertiert aber auch obj in den String-Typ und wir können die str-Variable direkt in der if-Anweisung verwenden.

3. Verschachtelte Verwendung der Mustertypbeurteilung und -konvertierung

Pattern Matching unterstützt auch die verschachtelte Verwendung der Mustertypbeurteilung und Mustertypkonvertierung, wodurch mehrere Beurteilungen und Konvertierungen flexibler durchgeführt werden können. Das Folgende ist ein Beispielcode:

if(obj instanceof Shape shape) {
    if(shape instanceof Circle circle) {
        // do something with circle
    } else if(shape instanceof Rectangle rectangle) {
        // do something with rectangle
    } else {
        // do something else
    }
}

Bestimmen Sie im obigen Code zunächst, ob obj ein Formtyp ist, und konvertieren Sie obj in eine Objektform des Formtyps. Beurteilen und konvertieren Sie dann erneut anhand der Form, um festzustellen, ob dies der Fall ist B. einen Kreistyp oder einen Rechtecktyp, und arbeiten mit Kreis- bzw. Rechteckvariablen.

Zusammenfassung

Mustervergleich für Instanzen ist eine wichtige Funktion, die in Java 14 eingeführt wurde und die Beurteilung und Konvertierung von Datentypen vereinfachen und die Lesbarkeit des Codes und die Entwicklungseffizienz verbessern kann. In diesem Artikel wird erläutert, wie Sie mit Pattern Matching Datentypen in Java 14 ermitteln und konvertieren, und entsprechende Codebeispiele bereitstellen. In der tatsächlichen Entwicklung können wir diese neue Funktion voll ausnutzen, um den Code prägnanter, lesbarer und effizienter zu gestalten.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Pattern Matching zum Ermitteln und Konvertieren von Datentypen 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