Heim >Java >javaLernprogramm >Mustervergleich für Switch in Java 21
Der Mustervergleich ist eine mit Spannung erwartete Funktion in Java, die der Sprache mehr Leistungsfähigkeit und Flexibilität verleiht. Java 21 führt den Mustervergleich für Switch-Anweisungen ein, was den Code vereinfacht und den Boilerplate reduziert. Lassen Sie uns untersuchen, wie diese neue Funktion funktioniert und warum sie nützlich ist.
Der Mustervergleich für Schalter ermöglicht es Ihnen, einen Wert mit Mustern abzugleichen, wodurch der Code ausdrucksvoller und lesbarer wird. Anstatt mehrere if-else-Anweisungen oder komplexe Switch-Fälle zu verwenden, können Sie jetzt prägnanteren und wartbareren Code schreiben.
Hier ist ein einfaches Beispiel, um zu veranschaulichen, wie der Mustervergleich für Schalter funktioniert:
static String formatterPatternSwitch(Object obj) { return switch (obj) { case Integer i -> String.format("int %d", i); case Long l -> String.format("long %d", l); case Double d -> String.format("double %f", d); case String s -> String.format("String %s", s); default -> obj.toString(); }; }
In diesem Beispiel nimmt formatterPatternSwitch ein Objekt und gibt eine formatierte Zeichenfolge basierend auf seinem Typ zurück. Hier ist eine Aufschlüsselung dessen, was passiert:
Lassen Sie mich einen detaillierten Beispielfall geben: Umgang mit verschiedenen Formen
Stellen Sie sich ein Szenario vor, in dem Sie verschiedene Formen verarbeiten und deren Flächen berechnen müssen. So kann der Mustervergleich für Schalter den Code vereinfachen:
abstract sealed class Shape permits Circle, Square, Rectangle {} final class Circle extends Shape { double radius; Circle(double radius) { this.radius = radius; } } final class Square extends Shape { double side; Square(double side) { this.side = side; } } final class Rectangle extends Shape { double length, width; Rectangle(double length, double width) { this.length = length; this.width = width; } } static double calculateArea(Shape shape) { return switch (shape) { case Circle c -> Math.PI * c.radius * c.radius; case Square s -> s.side * s.side; case Rectangle r -> r.length * r.width; }; }
In diesem Beispiel:
Der Mustervergleich für Switch in Java 21 ist eine leistungsstarke Funktion, die die Lesbarkeit, Prägnanz und Typsicherheit des Codes verbessert. Dadurch, dass Sie Werte direkt in Switch-Anweisungen mit Mustern abgleichen können, werden viele gängige Codierungsaufgaben vereinfacht. Java-Entwickler sollten diese Funktion unbedingt erkunden und übernehmen, um saubereren und wartbareren Code zu schreiben.
Fühlen Sie sich frei, diesen Abschnitt an Ihre Bedürfnisse anzupassen oder zu erweitern!
Das obige ist der detaillierte Inhalt vonMustervergleich für Switch in Java 21. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!