JavaRush /Blog Java /Random-MS /Coffee break #154. Tiga jenis gelung di Jawa. JDK 19: Cir...

Coffee break #154. Tiga jenis gelung di Jawa. JDK 19: Ciri Java 19 baharu akan datang pada bulan September

Diterbitkan dalam kumpulan

Tiga Jenis Gelung di Jawa

Sumber: Sederhana Selepas membaca siaran ini, anda akan belajar tentang cara gelung yang berbeza di Jawa. Coffee break #154.  Tiga jenis gelung di Jawa.  JDK 19: Ciri Java 19 baharu akan datang pada September - 1Gelung direka untuk melaksanakan blok kod sehingga syarat menjadi benar. Terdapat tiga jenis gelung dalam Java:
  • sementara
  • buat-sambil
  • untuk

Manakala gelung

Gelung while berulang sehingga keadaan Boolean yang ditentukan bernilai benar. Seperti yang ditunjukkan dalam rajah di bawah, pernyataan akan dilaksanakan sehingga ujian keadaan kembali benar. Coffee break #154.  Tiga jenis gelung di Jawa.  JDK 19: Ciri Java 19 baharu akan datang pada September - 2

Sintaks

while (condition true) {
       // Блок codeа
}

Contoh

Di sini gelung while akan dilaksanakan sehingga keadaan benar untuk x kurang daripada 3.
public class WhileLoop {
     static int x = 1;
     public static void main(String[] args) {
         while(x < 3) {
             System.out.println("x = "+x);
             x++;
         }
     }
}
Kesimpulan:
x = 1 x = 2

gelung do-while

Gelung do-while adalah serupa dengan gelung sementara dengan satu perbezaan kecil. Gelung do-while sentiasa berjalan sekali sebelum menguji keadaan. Coffee break #154.  Tiga jenis gelung di Jawa.  JDK 19: Ciri Java 19 baharu akan datang pada September - 3

Sintaks

do {
     //  Блок codeа
   } while(condition);

Contoh

Dalam contoh ini, anda boleh melihat bahawa pernyataan do atau blok kod sentiasa dilaksanakan sekali sebelum menguji sama ada keadaan itu benar atau palsu.
static int x = 5;
        public static void main(String[] args) {
            do {
                System.out.println("x = "+x);
                x++;
            } while(x < 3);
        }
Kesimpulan
x = 5

untuk gelung

Gelung for sangat berbeza daripada gelung while dan do-while. Dalam satu baris pernyataan kami mentakrifkan permulaan, keadaan (benar atau palsu), kenaikan/pengurangan. Coffee break #154.  Tiga jenis gelung di Jawa.  JDK 19: Ciri Java 19 baharu akan datang pada September - 4

Sintaks

For (initialization; condition; increment/decrement) {
    // Блок codeа
}

Contoh

public static void main(String[] args) {
     for(int i = 0 ; i < 2 ; i++) {
         System.out.println("i = " + i);
     }
}
Kesimpulan:
i=0 i=1
Permulaan: int i = 0 ialah keadaan permulaan gelung. Keadaan: Semak untuk melihat sama ada syarat untuk menjalankan blok atau kod di dalam gelung for adalah benar. Jika syarat itu palsu maka ini akan menamatkan gelung. Penambahan/penurunan: kemas kini pembolehubah untuk lelaran seterusnya.

Dilanjutkan untuk gelung (untuk-setiap)

Terdapat satu lagi versi gelung for yang lebih padat dan boleh dibaca daripada gelung for yang ringkas. Ia dipanggil gelung lanjutan untuk (atau untuk setiap gelung) dan digunakan untuk lelaran melalui koleksi dan tatasusunan. Ia tersedia untuk mana-mana objek yang melaksanakan antara muka Iterable.

Contoh

class Main
{
    public static void main(String[] args)
    {
        int[] A = { 1, 2, 3, 4, 5 };

        for (int i: A) {
            System.out.println(i);
        }
    }
}
Kesimpulan:
1 2 3 4 5

JDK 19: Ciri Java 19 baharu akan datang pada bulan September

Sumber: Infoworld Berikut ialah senarai ciri baharu yang akan muncul dalam keluaran JDK yang akan datang. Tayangannya dijadualkan pada 20 September 2022. Java Development Kit 19, keluaran sokongan jangka pendek yang dijadualkan pada bulan September, telah mencapai peringkat calon keluaran. Terdapat tujuh ciri yang perlu diberi perhatian: selari berstruktur, templat rekod, pratonton API asing dan memori, dan sokongan untuk seni bina set arahan (ISA) Linux/RISC-V sumber terbuka. Memandangkan ciri baharu sudah dibekukan untuk JDK 19, ciri terancang lain, seperti objek generik dan nilai, sedang ditangguhkan kepada versi platform yang lebih baru. Biasanya versi Java baharu dikeluarkan setiap enam bulan. Calon keluaran JDK 19 telah diterbitkan pada 11 Ogos, berikutan dua keluaran tanjakan pada bulan Jun dan Julai. Calon keluaran kedua dijangka pada 25 Ogos. Binaan awal JDK 19 boleh dimuat turun dari jdk.java.net/19 . Ciri-ciri JDK 19 termasuk:
  • Keselarian berstruktur (semasa fasa inkubasi). Ia direka untuk memudahkan pengaturcaraan berbilang benang menggunakan API Konkurensi Berstruktur. Keselarian ini menganggap berbilang tugasan yang dijalankan pada benang yang berbeza sebagai satu unit kerja. Sehubungan itu, ini akan memudahkan pengendalian dan pembatalan ralat, dan kebolehpercayaan juga akan dipertingkatkan.

  • Pratonton templat rekod (untuk menghuraikan nilai rekod). Corak rekod dan corak jenis kini boleh disarangkan, menyediakan bentuk navigasi dan manipulasi data yang deklaratif, berkuasa dan boleh digubah. Ciri baharu termasuk memanjangkan padanan corak untuk menyatakan pertanyaan data kompaun yang lebih kompleks tanpa mengubah sintaks atau semantik corak jenis.

    Inovasi ini dibina berdasarkan padanan corak contohnya yang diperkenalkan dalam JDK 16 pada Mac 2021. Keluaran masa hadapan mungkin memerlukan templat rekod dilanjutkan dengan ciri seperti templat tatasusunan dan templat vararg.

    Templat siaran adalah sebahagian daripada projek Amber , yang bertujuan untuk meneroka dan membangunkan ciri Java kecil yang berorientasikan prestasi.

  • Pratonton versi fungsi API asing dan memori . Keluaran baharu akan memperkenalkan API yang membenarkan program Java berinteraksi dengan kod dan data di luar masa jalan Java. Dengan cekap memanggil fungsi pihak ketiga (iaitu, kod di luar JVM) dan mengakses memori asing dengan selamat (memori tidak diurus oleh JVM), API akan membenarkan program Java memanggil perpustakaan asli dan memproses data asli tanpa kelemahan Java. Antara Muka Asli (JNI).

    API asing dan memori menggabungkan dua API pengeraman awal: API akses memori luaran dan API pemaut luaran. Fungsi asing dan API memori sebelum ini diinkubasi dalam JDK 17 dan diinkubasi semula dalam JDK 18.

  • Pratonton benang Maya. Ciri ini memperkenalkan benang ringan yang sangat mengurangkan usaha menulis, menyelenggara dan memantau aplikasi selari berprestasi tinggi. Tujuan inovasi adalah untuk menyediakan keupayaan untuk menskalakan aplikasi pelayan yang ditulis dalam gaya benang-per-permintaan yang mudah. Ciri menyasarkan kod yang menggunakan java.lang Thread API untuk menyuntik benang maya dengan perubahan minimum dan untuk menyelesaikan masalah, nyahpepijat dan memprofilkan benang maya menggunakan alat JDK sedia ada.

  • Pratonton ketiga padanan corak untuk ungkapan dan pernyataan suis . Ia memanjangkan padanan corak untuk beralih, yang akan membolehkan ungkapan diuji terhadap beberapa corak, setiap satu dengan kesan tertentu, jadi pertanyaan berpusatkan data yang kompleks boleh dinyatakan dengan ringkas dan selamat.

    Ciri ini telah dipratonton sebelum ini dalam JDK 17 dan JDK 18. Pratonton ketiga menambah penambahbaikan, termasuk menggantikan corak yang dilindungi dengan klausa dalam blok suis. Selain itu, semantik masa jalan corak suis apabila nilai ungkapan pemilih adalah batal kini menyokong semantik suis warisan.

    Inovasi ini akan mengembangkan ekspresi dan kebolehgunaan ekspresi suis dan pengendali dengan membenarkan corak muncul dalam label kes. Ia juga akan memberikan pembangun keupayaan untuk meredakan permusuhan sejarah terhadap null dan suis apabila diperlukan, meningkatkan keselamatan penyataan suis dan memastikan bahawa penyataan dan penyataan suis sedia ada terus disusun tidak berubah dan dilaksanakan dengan semantik yang sama.

  • Inkubasi keempat API vektor . Ia akan menyatakan pengiraan vektor yang disusun dengan pasti pada masa jalan ke dalam arahan vektor optimum pada seni bina pemproses yang disokong. Ini akan memberikan prestasi yang lebih baik daripada pengiraan skalar yang setara. Pembangun yang menggunakan API memperoleh keupayaan untuk menulis algoritma vektor kompleks dalam Java menggunakan autovectorizer HotSpot, tetapi dengan model tersuai yang menjadikan vektorisasi lebih mudah diramal dan boleh dipercayai. Vector API sebelum ini diinkubasi dalam JDK 16, JDK 17 dan JDK 19.

    API Vektor akan memanjangkan operasi linear kamiran bitwise, termasuk operasi seperti mengira bilangan bit seseorang, membalikkan susunan bit dan memampatkan serta mengembangkan bit.

  • Port Java Linux/RISC-V akan mendapat sokongan set arahan perkakasan yang sudah disokong oleh pelbagai kit alat bahasa. Port Linux/RISC-V kini akan menyokong konfigurasi RV64GV RISC-V, ISA tujuan umum 64-bit yang merangkumi arahan vektor.

    Port ini juga akan menyokong pilihan mesin maya HotSpot berikut: jurubahasa templat, pengkompil C1 JIT (pelanggan), pengkompil C2 JIT (pelayan) dan semua pengumpul sampah utama semasa, termasuk ZGC dan Shenandoah.

Komen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION