Rumah > Java > javaTutorial > teks badan

Kuasa Tweak Kecil: Skop Aliran Java dan Padanan Corak Didedahkan

王林
Lepaskan: 2024-08-12 06:50:02
asal
362 orang telah melayarinya

The Power of Small Tweaks: Java #s Flow Scoping and Pattern Matching Unveiled

Sehari dalam Kehidupan Pembangun Java: Kuasa Halus Java 17

Ia adalah salah satu pagi di mana kopinya betul-betul betul, dan kod itu kelihatan mengalir dengan lancar seperti minuman dalam cawan anda. Anda duduk di meja anda, bersedia untuk menangani sekeping projek anda yang sangat jelek-modul yang telah memberi anda masalah selama berhari-hari. Bukan kerumitan logik yang menjadi masalah, tetapi kod yang kikuk dan berulang yang kelihatan berterusan, baris demi baris.

Anda mengeluh dan bersandar di kerusi anda. Mesti ada cara yang lebih baik, anda fikir.

Masalah Pertama: Scope Creep

Fikiran anda melayang kembali kepada pepijat yang menyebabkan anda terjaga lewat malam sebelumnya. Ia adalah salah satu pepijat yang berbahaya dan sukar dikesan—ralat yang disebabkan oleh pembolehubah yang telah diisytiharkan terlalu luas. Penyebabnya ialah pernyataan if else yang anda tulis beberapa minggu lalu, dengan pembolehubah yang berlarutan dalam skop luar lama selepas ia diperlukan.

Object obj = 123;
String result;

if (obj instanceof String) {
    result = (String) obj;
} else {
    result = obj.toString();
}

System.out.println(result);
Salin selepas log masuk

Kod itu berfungsi, pasti. Tetapi sesuatu mengenainya mengganggu anda. Hasil pembolehubah adalah melepak dalam skop yang lebih luas seperti hantu dari aliran sebelumnya, bersedia untuk menyebabkan kekeliruan atau lebih teruk—pepijat lain.

Tetapi kemudian anda teringat sesuatu yang anda pernah baca tentang Java 17: ciri kecil yang dipanggil skop aliran. Ia adalah salah satu daripada perubahan yang kelihatan kecil yang boleh membuat perubahan besar. Dengan skop aliran, pembolehubah boleh dihadkan kepada blok tertentu di mana ia diperlukan, memastikan selebihnya kod anda bersih dan fokus.

Anda memutuskan untuk mencubanya.

Object obj = 123;

if (obj instanceof String str) {
    System.out.println(str);
} else {
    System.out.println(obj.toString());
}
Salin selepas log masuk

Seolah-olah ada beban yang diangkat. Kod itu lebih ketat, lebih elegan. Pembolehubah yang tidak diperlukan telah hilang, meninggalkan aliran yang masuk akal. Anda tidak boleh menahan senyuman—kemenangan kecil, tetapi kemenangan yang memuaskan.

Masalah Kedua: Pengisaran Jenis-Semak

Digalakkan oleh kejayaan anda, anda beralih ke bahagian lain kod yang telah mengganggu anda. Ia adalah senario klasik: Objek yang boleh menjadi apa sahaja—String, Integer, Double—dan anda perlu menyemak jenisnya sebelum anda boleh melakukan apa-apa dengannya.

Cara lama adalah kikuk, melibatkan beberapa langkah hanya untuk mencapai bahagian yang baik:

Object obj = "Hello, World!";
if (obj instanceof String) {
    String str = (String) obj;
    System.out.println(str.toUpperCase());
}
Salin selepas log masuk

Anda mengerang sambil melihatnya. Sudah tentu, ia berjaya, tetapi mengapa anda perlu menyemak jenis dan kemudian menghantarnya? Mengapa ia tidak boleh menjadi lebih mudah?

Ketika itulah anda teringat satu lagi permata kecil dari Java 17: padanan corak sebagai contoh. Ini bukan sekadar gula sintaksis—ini ialah cara untuk menyelaraskan kod anda, untuk menjadikannya lebih mudah dibaca dan kurang mudah ralat.

Anda memfaktorkan semula kod, tidak sabar-sabar untuk melihat perbezaannya:

Object obj = "Hello, World!";
if (obj instanceof String str) {
    System.out.println(str.toUpperCase());
}
Salin selepas log masuk

Kesannya serta merta. Kod itu lebih bersih, lebih ringkas. Semakan jenis dan hantaran kini adalah satu dan sama, semuanya dalam satu baris. Seolah-olah kod itu bercakap dalam bahasa anda, melakukan apa yang anda mahukannya lakukan tanpa sebarang bunyi tambahan.

The Magic of Java 17: Menyatukan Semuanya

Seiring berjalannya hari, anda mendapati diri anda semakin banyak menggunakan ciri ini, menyusunnya ke dalam kod anda seperti seorang tukang yang mahir. Anda mula melihat keindahan dalam perubahan kecil ini—cara mereka bekerjasama untuk mencipta sesuatu yang lebih besar daripada jumlah bahagian mereka.

Menjelang tengah hari, anda sedang memfaktorkan semula sekeping kod lama yang selalu terasa agak kikuk. Ia adalah gelung yang memproses pelbagai jenis campuran, setiap elemen memerlukan pengendalian khasnya sendiri. Sebelum ini, kod itu telah digunakan secara bertele-tele, dengan setiap jenis semakan diikuti dengan pelakon yang jelas.

Tetapi sekarang, dengan skop aliran Java 17 dan padanan corak, anda melihat cara yang lebih baik:

public class PatternMatchingDemo {
    public static void main(String[] args) {
        Object[] elements = {"Java", 17, 3.14, "Pattern Matching"};

        for (Object element : elements) {
            if (element instanceof String str) {
                System.out.println("String: " + str.toUpperCase());
            } else if (element instanceof Integer i) {
                System.out.println("Integer: " + (i * 2));
            } else if (element instanceof Double d) {
                System.out.println("Double: " + (d * 2));
            } else {
                System.out.println("Unknown type");
            }
        }
    }
}
Salin selepas log masuk

Kod itu diperkemas, setiap blok logik terkandung dalam skopnya sendiri, dengan pembolehubah terikat kemas pada aliran khusus mereka. Anda kagum bagaimana perubahan kecil itu boleh memberi kesan yang begitu besar. Plat dandang berulang telah hilang, digantikan dengan kejelasan dan kesederhanaan yang dirasakan betul.

Kesimpulan: Revolusi Tenang

Semasa anda berkemas untuk hari itu, anda tidak dapat mengelak daripada memikirkan sejauh mana Java 17 telah mengubah kod anda. Ini bukan ciri baharu yang mencolok, tetapi ia berkuasa dengan cara tersendiri yang senyap. Skop aliran dan padanan corak telah membantu anda menulis kod yang bukan sahaja lebih cekap tetapi juga lebih mudah dibaca dan diselenggara.

Dalam dunia pembangunan perisian, selalunya perkara kecil yang membuat perbezaan terbesar. Dan hari ini, anda telah mendapati bahawa helah kecil Java 17—skop aliran dan padanan corak—hanyalah yang anda perlukan untuk menjadikan kod anda lebih baik, satu baris pada satu masa.

Atas ialah kandungan terperinci Kuasa Tweak Kecil: Skop Aliran Java dan Padanan Corak Didedahkan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!