Padanan corak ialah ciri berkuasa yang diperkenalkan dalam Java yang membolehkan anda memudahkan dan meningkatkan kebolehbacaan kod anda. Pada mulanya diperkenalkan dalam Java 14 sebagai contoh semakan dan dilanjutkan dalam versi kemudian, padanan corak membolehkan kod yang lebih ekspresif dan ringkas dengan mengurangkan boilerplate.
Padanan corak membolehkan anda mengekstrak komponen daripada objek dan menggunakan syarat tertentu dengan cara yang ringkas. Ia ialah ciri yang menyemak nilai terhadap corak dan, jika padanan berjaya, mengikat pembolehubah daripada corak.
Salah satu penggunaan padanan corak yang paling biasa ialah dengan pengendali instanceof. Berikut ialah contoh:
public class PatternMatchingExample { public static void main(String[] args) { Object obj = "Hello, World!"; if (obj instanceof String s) { System.out.println("The string is: " + s); } else { System.out.println("Not a string"); } } }
Dalam contoh ini, operator instanceof bukan sahaja menyemak sama ada obj ialah String tetapi juga menghantarnya ke String dan mengikatnya kepada pembolehubah s dalam satu langkah.
Padanan corak juga digunakan dengan ekspresi suis, meningkatkan kuasa dan fleksibilitinya. Berikut ialah contoh menggunakan kelas tertutup:
public sealed class Shape permits Circle, Rectangle, Square {} public final class Circle extends Shape { private final double radius; public Circle(double radius) { this.radius = radius; } public double radius() { return radius; } } public final class Rectangle extends Shape { private final double width, height; public Rectangle(double width, double height) { this.width = width; this.height = height; } public double width() { return width; } public double height() { return height; } } public final class Square extends Shape { private final double side; public Square(double side) { this.side = side; } public double side() { return side; } } public class PatternMatchingWithSwitch { public static void main(String[] args) { Shape shape = new Circle(5); String result = switch (shape) { case Circle c -> "Circle with radius " + c.radius(); case Rectangle r -> "Rectangle with width " + r.width() + " and height " + r.height(); case Square s -> "Square with side " + s.side(); }; System.out.println(result); } }
Dalam contoh ini, ungkapan suis menggunakan padanan corak untuk memusnahkan objek Shape dan mengekstrak data yang berkaitan.
Padanan corak dalam Java membawa tahap ekspresif dan kesederhanaan baharu kepada kod anda. Dengan mengurangkan boilerplate dan meningkatkan kebolehbacaan, ia membolehkan anda menulis program yang lebih bersih dan lebih boleh diselenggara. Sama ada anda bekerja dengan struktur data yang kompleks atau hanya cuba menyelaraskan semakan jenis anda, padanan corak ialah alat yang berharga dalam kit alat Java anda.
Atas ialah kandungan terperinci Memahami Padanan Corak dalam Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!