Rumah  >  Artikel  >  Java  >  Cara menggunakan Padanan Corak untuk menentukan dan menukar jenis data dalam Java 14

Cara menggunakan Padanan Corak untuk menentukan dan menukar jenis data dalam Java 14

WBOY
WBOYasal
2023-07-29 14:13:261416semak imbas

Cara menggunakan Pattern Matching untuk menentukan dan menukar jenis data dalam Java 14

Dalam Java 14, Pattern Matching for instanceof (iaitu "pattern matching") diperkenalkan, yang boleh memudahkan penentuan jenis data dan operasi penukaran. Ciri baharu ini boleh menjadikan kod lebih ringkas dan boleh dibaca, sambil meningkatkan kecekapan pembangunan. Artikel ini akan memperkenalkan cara menggunakan Padanan Corak untuk menentukan dan menukar jenis data dalam Java 14 dan memberikan contoh kod.

1. Pertimbangan jenis corak

Padanan Corak untuk instanceof membolehkan anda untuk terus menggunakan operator instanceof dengan perisytiharan berubah. Cara penulisan sebelum ini ialah melakukan pertimbangan jenis dahulu dan kemudian melakukan penukaran jenis, seperti yang ditunjukkan di bawah:

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

Dalam Java 14, kita boleh terus menggunakan pertimbangan jenis corak, dan kodnya adalah seperti berikut:

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

Dengan cara ini, bukan sahaja kita boleh Menentukan sama ada obj adalah daripada jenis String Anda juga boleh memaksa obj kepada jenis String dan menggunakan pembolehubah str secara langsung dalam pernyataan if.

2. Penukaran jenis corak

Selain pertimbangan jenis, Padanan Corak juga menyediakan fungsi penukaran jenis corak, yang boleh menukar objek kepada jenis tertentu dengan mudah. Kaedah penulisan sebelum ini adalah menggunakan penukaran jenis paksa, seperti yang ditunjukkan di bawah:

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

Dalam Java 14, kita boleh menggunakan penukaran jenis corak untuk menggantikan kaedah penulisan di atas adalah seperti berikut:

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

Kaedah penulisan ini bukan sahaja melakukan pertimbangan jenis, tetapi juga akan menukar obj kepada jenis String, dan kita boleh menggunakan pembolehubah str secara langsung dalam pernyataan if.

3. Penggunaan bersarang bagi pertimbangan dan penukaran jenis corak

Padanan Corak juga menyokong penggunaan bersarang bagi pertimbangan jenis corak dan penukaran jenis corak, yang boleh melakukan pelbagai pertimbangan dan penukaran dengan lebih fleksibel. Berikut ialah kod sampel:

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
    }
}

Dalam kod di atas, tentukan dahulu sama ada obj ialah jenis Bentuk, dan tukar obj kepada bentuk objek jenis Bentuk, kemudian nilai dan tukar semula berdasarkan bentuk untuk menentukan sama ada ia jenis Bulatan atau Jenis Segiempat, dan beroperasi menggunakan pembolehubah bulatan dan segi empat tepat masing-masing.

Ringkasan

Pemadanan Corak untuk instanceof ialah ciri penting yang diperkenalkan dalam Java 14, yang boleh memudahkan pertimbangan dan penukaran jenis data, serta meningkatkan kebolehbacaan kod dan kecekapan pembangunan. Artikel ini memperkenalkan cara menggunakan Padanan Corak untuk menentukan dan menukar jenis data dalam Java 14 dan menyediakan contoh kod yang sepadan. Dalam pembangunan sebenar, kami boleh menggunakan sepenuhnya ciri baharu ini untuk menjadikan kod lebih ringkas, boleh dibaca dan cekap.

Atas ialah kandungan terperinci Cara menggunakan Padanan Corak untuk menentukan dan menukar jenis data dalam Java 14. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn