Java Academy · Pelajaran

continue Berlabel

Teruskan gelung luar.

Pelajaran 3 daripada 413 langkah

continue Berlabel ialah pelajaran Java Academy percuma di CoddyKit. Ini ialah pelajaran 3 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Java Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Java Academy merangkumi sejumlah 4 pelajaran.

Meneruskan Gelung Luaran

continue biasa hanya memulakan semula gelung dalaman. Kadangkala anda mahu melangkau ke lelaran seterusnya bagi gelung luaran.

Untuk tujuan itu, Java menawarkan continue berlabel.

Ia menggandingkan label gelung dengan kata kunci continue untuk mengawal gelung yang dimajukan.

Sintaks continue Berlabel

Bentuknya ialah continue label;, dengan label tersebut menamakan gelung yang mengelilinginya.

Daripada memajukan gelung dalaman, ia melompat ke lelaran seterusnya bagi gelung berlabel.

Segala kod yang masih berbaki dalam gelung dalaman untuk pusingan itu dilangkau.

continue outer;  // jump to next iteration of 'outer'

Contoh Pertama

Di sini, apabila col sama dengan 2, kita meneruskan gelung outer.

Ini meninggalkan baki gelung dalaman dan terus bergerak ke baris seterusnya.

public class Main {
    public static void main(String[] args) {
        outer:
        for (int row = 1; row <= 3; row++) {
            for (int col = 1; col <= 3; col++) {
                if (col == 2) {
                    continue outer;
                }
                System.out.println("row " + row + ", col " + col);
            }
        }
    }
}

Membaca Keluaran

Setiap baris hanya mencetak col 1. Apabila col mencapai 2, continue outer melompat terus ke baris seterusnya.

Lajur 2 dan 3 tidak pernah dicetak untuk mana-mana baris.

Gelung dalaman dimulakan semula dari col 1 pada setiap baris baharu.

continue berbanding continue label

Bandingkan dengan continue biasa. Ia hanya akan melangkau col 2 dan masih mencetak col 3.

Jalankan kod ini dan perhatikan bahawa col 1 dan col 3 kedua-duanya muncul pada setiap baris.

public class Main {
    public static void main(String[] args) {
        for (int row = 1; row <= 3; row++) {
            for (int col = 1; col <= 3; col++) {
                if (col == 2) {
                    continue;
                }
                System.out.println("row " + row + ", col " + col);
            }
        }
    }
}

Perbezaan Utama

continue biasa hanya melangkau lelaran dalaman semasa, jadi gelung dalaman terus berjalan.

continue outer berlabel meninggalkan seluruh gelung dalaman dan memulakan pusingan seterusnya bagi gelung luaran.

Satu label itu mengubah jumlah kod yang dilangkau.

Melangkau Seluruh Baris

continue berlabel berguna apabila satu nilai yang tidak sah sepatutnya membatalkan baki lelaran dalaman.

Di sini, jika mana-mana nombor dalam satu baris adalah negatif, kita melangkau baki kerja untuk baris itu dan meneruskan ke baris seterusnya.

public class Main {
    public static void main(String[] args) {
        int[][] data = {{1, 2, 3}, {4, -1, 6}, {7, 8, 9}};
        rows:
        for (int r = 0; r < data.length; r++) {
            int sum = 0;
            for (int c = 0; c < data[r].length; c++) {
                if (data[r][c] < 0) {
                    System.out.println("Row " + r + " skipped");
                    continue rows;
                }
                sum += data[r][c];
            }
            System.out.println("Row " + r + " sum = " + sum);
        }
    }
}

Menjejaki Contoh Itu

Baris 0 dan 2 mencetak jumlah masing-masing. Baris 1 menemui nilai negatif, mencetak "Baris 1 dilangkau" dan melompat ke baris seterusnya.

Yang penting, baris jumlah untuk baris 1 tidak pernah dilaksanakan kerana continue berlabel melangkauinya.

Menapis Pasangan

Satu lagi kegunaan: melangkau seluruh item luaran sebaik sahaja satu syarat dalaman gagal.

Gelung ini mencetak pasangan tetapi melangkau mana-mana i yang hasil darabnya dengan j akan melebihi 6.

public class Main {
    public static void main(String[] args) {
        loopI:
        for (int i = 1; i <= 3; i++) {
            for (int j = 1; j <= 3; j++) {
                if (i * j > 6) {
                    continue loopI;
                }
                System.out.println(i + " x " + j + " = " + (i * j));
            }
        }
    }
}

Nama dan Kedudukan Label

Gelung berlabel mesti mengelilingi pernyataan continue. Anda tidak boleh meneruskan ke label yang tidak berada di atasnya.

Pilih nama yang menerangkan tujuan seperti rows atau loopI supaya pembaca tahu gelung yang dimajukan.

Label yang jelas sudah menjadi dokumentasi dengan sendirinya.

Apabila Ia Membantu atau Menyusahkan

continue berlabel membantu apabila satu syarat sepatutnya membatalkan baki lelaran dalaman dan meneruskan pelaksanaan.

Namun, penggunaan label secara berlebihan menyebabkan aliran sukar dijejaki. Jika continue biasa atau return awal daripada kaedah lebih mudah dibaca, utamakan pilihan itu.

Gunakan label hanya apabila label benar-benar menjelaskan kod.

Semakan Pantas

Ramalkan kesan continue berlabel.

Imbas Kembali

continue label; melangkau baki gelung dalaman dan memajukan gelung luaran yang dinamakan ke lelaran seterusnya.

Ia berbeza daripada continue biasa, yang hanya melangkau satu lelaran dalaman. Gunakan label apabila label menjadikan logik berbilang gelung lebih jelas, bukan sekadar lebih pendek.

Percuma untuk bermula

Pelajari Java dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
104
Pelajaran
374

Soalan Lazim

Adakah pelajaran “continue Berlabel” percuma?

Ya — teks penuh “continue Berlabel” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Java Academy, tingkat taraf kepada CoddyKit PRO. Kursus Java Academy merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “continue Berlabel”?

Teruskan gelung luar. Anda berlatih Java Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Java Academy?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Java Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 3 daripada 4.

Berapa lamakah pelajaran “continue Berlabel” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Java Academy ini?

Ya. Setiap pelajaran Java Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. break dan continue
  2. break Berlabel
  3. continue Berlabel
  4. Mengelakkan Aliran Berserabut
← Kembali ke Java Academy