JavaRush /Blog Jawa /Random-JV /Ngopi #154. Telung jinis gelung ing basa Jawa. JDK 19: Ne...

Ngopi #154. Telung jinis gelung ing basa Jawa. JDK 19: New Java 19 fitur teka ing September

Diterbitake ing grup

Telung Jinis Loop ing Jawa

Sumber: Sedheng Sawise maca tulisan iki, sampeyan bakal sinau babagan macem-macem cara looping ing basa Jawa. Ngopi #154.  Telung jinis gelung ing basa Jawa.  JDK 19: Fitur Java 19 anyar sing bakal teka ing September - 1A Loop dirancang kanggo nglakokake blok kode nganti kondisi dadi bener. Ana telung jinis gelung ing basa Jawa:
  • nalika
  • nindakake-nalika
  • kanggo

While loop

Loop while diulang nganti kondisi Boolean sing ditemtokake dievaluasi dadi bener. Kaya sing ditampilake ing diagram ing ngisor iki, statement kasebut bakal dieksekusi nganti tes kondisi bali bener. Ngopi #154.  Telung jinis gelung ing basa Jawa.  JDK 19: Fitur Java 19 anyar teka ing September - 2

Sintaksis

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

Tuladha

Ing kene loop while bakal dieksekusi nganti kondisi bener kanggo x kurang saka 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

do-while loop

Daur ulang do-while padha karo daur ulang nalika kanthi prabédan cilik. Loop do-while tansah mlaku sapisan sadurunge nguji kondisi kasebut. Ngopi #154.  Telung jinis gelung ing basa Jawa.  JDK 19: Fitur Java 19 anyar teka ing September - 3

Sintaksis

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

Tuladha

Ing conto iki, sampeyan bisa ndeleng manawa statement do utawa blok kode tansah dieksekusi sapisan sadurunge nyoba apa kondisi kasebut bener utawa salah.
static int x = 5;
        public static void main(String[] args) {
            do {
                System.out.println("x = "+x);
                x++;
            } while(x < 3);
        }
Kesimpulan
x = 5

kanggo loop

Loop for beda banget karo loop while lan do-while. Ing siji baris statement kita nemtokake initialization, kondisi (bener utawa salah), increment / decrement. Ngopi #154.  Telung jinis gelung ing basa Jawa.  JDK 19: Fitur Java 19 anyar sing bakal teka ing September - 4

Sintaksis

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

Tuladha

public static void main(String[] args) {
     for(int i = 0 ; i < 2 ; i++) {
         System.out.println("i = " + i);
     }
}
Kesimpulan:
i=0 i=1
Initialization: int i = 0 minangka kondisi initialization loop. Kahanan: Priksa manawa kondisi kanggo mbukak blok utawa kode ing loop for bener. Yen kondisi iku salah banjur iki bakal mungkasi loop. Increment / decrement: nganyari variabel kanggo pengulangan sabanjure.

Diperpanjang kanggo loop (kanggo-saben)

Ana versi liyane saka loop for sing luwih kompak lan bisa diwaca tinimbang for loop sing prasaja. Iki diarani extended for loop (utawa kanggo saben loop) lan digunakake kanggo ngulang koleksi lan array. Kasedhiya kanggo obyek apa wae sing ngetrapake antarmuka Iterable.

Tuladha

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: New Java 19 fitur teka ing September

Sumber: Infoworld Mangkene dhaptar fitur anyar sing bakal katon ing rilis JDK sing bakal teka. Rilis dijadwalake tanggal 20 September 2022. Java Development Kit 19, rilis dhukungan jangka pendek amarga wulan September, wis tekan tahapan calon rilis. Ana pitung fitur sing kudu diwaspadai: paralelisme terstruktur, template rekaman, pratinjau API manca lan memori, lan dhukungan kanggo arsitektur set instruksi Linux / RISC-V open-source (ISA). Wiwit fitur-fitur anyar wis beku kanggo JDK 19, fitur liyane sing direncanakake, kayata umum lan obyek nilai, ditundha menyang versi platform sing luwih anyar. Biasane versi Jawa anyar dirilis saben nem sasi. Kandidat rilis JDK 19 diterbitake tanggal 11 Agustus, sawise rong rilis rampdown ing wulan Juni lan Juli. Kandidat rilis kapindho samesthine tanggal 25 Agustus. Mbangun awal JDK 19 bisa diundhuh saka jdk.java.net/19 . Fitur JDK 19 kalebu:
  • Paralelisme terstruktur (sajrone fase inkubasi). Iki dirancang kanggo nyederhanakake pemrograman multi-threaded nggunakake Structured Concurrency API. Paralelisme iki nganggep pirang-pirang tugas sing mlaku ing benang sing beda-beda minangka unit kerja siji. Mulane, iki bakal nyederhanakake penanganan kesalahan lan pembatalan, lan linuwih uga bakal luwih apik.

  • Pratinjau template rekaman (kanggo parsing nilai rekaman). Pola rekaman lan pola jinis saiki bisa disarang, nyedhiyakake wangun pandhu arah lan manipulasi data sing deklaratif, kuat, lan bisa disusun. Fitur anyar kalebu ndawakake pencocokan pola kanggo nyebut pitakon data senyawa sing luwih rumit tanpa ngganti sintaks utawa semantik pola jinis.

    Inovasi iki dibangun ing pencocokan pola kanggo conto sing dikenalake ing JDK 16 ing Maret 2021. Rilis ing mangsa ngarep bisa uga mbutuhake template rekaman ditambah karo fitur kayata template array lan template vararg.

    Cithakan kirim minangka bagéan saka proyèk Amber , sing tujuane njelajah lan ngembangake fitur-fitur Jawa cilik sing berorientasi kinerja.

  • Pratinjau versi fungsi API manca lan memori . Rilis anyar bakal ngenalake API sing ngidini program Java sesambungan karo kode lan data ing njaba runtime Java. Kanthi nelpon fungsi pihak katelu kanthi efisien (yaiku, kode ing njaba JVM) lan ngakses memori manca kanthi aman (memori ora dikelola JVM), API bakal ngidini program Java nelpon perpustakaan asli lan ngolah data asli tanpa kekurangan Java. Native Interface (JNI).

    API manca lan memori nggabungake rong API inkubasi sadurungé: API akses memori eksternal lan API linker eksternal. Fungsi asing lan API memori sadurunge diinkubasi ing JDK 17 lan diinkubasi maneh ing JDK 18.

  • Pratinjau utas virtual. Fitur iki ngenalake benang entheng sing nyuda gaweyan nulis, njaga, lan ngawasi aplikasi paralel kanthi kinerja dhuwur. Tujuan saka inovasi yaiku nyedhiyakake kemampuan kanggo skala aplikasi server sing ditulis kanthi gaya thread-per-request sing prasaja. Fitur kasebut ngarahake kode sing nggunakake java.lang Thread API kanggo nyuntikake utas virtual kanthi owah-owahan minimal, lan kanggo ngatasi masalah, debug, lan profil thread virtual nggunakake alat JDK sing wis ana.

  • Pratinjau katelu saka pencocokan pola kanggo ekspresi lan statement switch . Iki ngluwihi pencocokan pola kanggo ngalih, sing bakal ngidini ekspresi dites marang sawetara pola, saben duwe efek tartamtu, supaya pitakon data-sentris sing rumit bisa ditulis kanthi ringkes lan aman.

    Fitur iki sadurunge pratinjau ing JDK 17 lan JDK 18. Pratinjau katelu nambah dandan, kalebu ngganti direksa nalika pola karo klausa ing pamblokiran switch. Kajaba iku, semantik runtime saka pola switch nalika nilai ekspresi pamilih null saiki ndhukung semantik switch warisan.

    Inovasi bakal nggedhekake ekspresif lan bisa ditrapake ekspresi lan operator switch kanthi ngidini pola katon ing label cilik. Iku uga bakal menehi pangembang kemampuan kanggo ngendhokke permusuhan sajarah menyang nulls lan ngalih yen perlu, nambah safety saka statements ngalih, lan mesthekake yen statements ngalih ana lan statements terus kanggo ngumpulake panggah lan nglakokaké karo semantik identik.

  • Inkubasi kaping papat saka vektor API . Iku bakal nyebut komputasi vektor sing andal ngumpulake ing runtime menyang instruksi vektor optimal ing arsitektur prosesor didhukung. Iki bakal nyedhiyakake kinerja sing luwih apik tinimbang petungan skalar sing padha. Pangembang sing nggunakake API entuk kemampuan kanggo nulis algoritma vektor kompleks ing Jawa nggunakake autovectorizer HotSpot, nanging kanthi model khusus sing nggawe vektorisasi luwih bisa diprediksi lan dipercaya. Vector API sadurunge diinkubasi ing JDK 16, JDK 17, lan JDK 19.

    Vector API bakal ngluwihi operasi linear integral bitwise, kalebu operasi kayata ngetang jumlah bit siji, mbalikke urutan bit, lan compressing lan ngembangaken bit.

  • Port Java Linux/RISC-V bakal entuk dhukungan set instruksi hardware sing wis didhukung dening macem-macem toolkit basa. Port Linux/RISC-V saiki bakal ndhukung konfigurasi RV64GV RISC-V, ISA tujuan umum 64-bit sing kalebu instruksi vektor.

    Port uga bakal ndhukung opsi mesin virtual HotSpot ing ngisor iki: interpreter cithakan, C1 JIT compiler (klien), C2 JIT compiler (server), lan kabeh uwuh utama saiki, kalebu ZGC lan Shenandoah.

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