Grafik perbandingan:
Dasar untuk Perbandingan | istirahat | terus |
---|---|---|
Tugas | Ini mengakhiri eksekusi iterasi loop yang tersisa. | Ini hanya mengakhiri iterasi loop saat ini. |
Kontrol setelah istirahat / lanjutkan | 'break' melanjutkan kontrol program ke akhir loop dengan 'break' itu. | 'continue' melanjutkan kontrol program ke iterasi berikutnya dari loop yang menyertakan 'continue'. |
Penyebab | Ini menyebabkan terminasi loop dini. | Itu menyebabkan eksekusi awal iterasi berikutnya. |
Kelanjutan | 'break' menghentikan kelanjutan dari loop. | 'Lanjutkan' tidak menghentikan kelanjutan dari loop, itu hanya menghentikan iterasi saat ini. |
Penggunaan lainnya | 'break' dapat digunakan dengan 'switch', 'label'. | 'lanjutkan' tidak dapat dieksekusi dengan 'sakelar' dan 'label'. |
Definisi Istirahat
Dalam C ++ break hanya memiliki dua kegunaan yaitu pertama digunakan untuk "mengakhiri eksekusi suatu kasus dalam pernyataan switch". Kedua, untuk "mengakhiri loop dan melanjutkan kontrol ke pernyataan berikutnya setelah loop". Tetapi dalam Java break memiliki tiga kegunaan pertama, ia mengakhiri case di switch, kedua untuk mengakhiri loop yang melampirkan break dan ketiga, seperti yang disebutkan sebelumnya bahwa Java tidak memberikan pernyataan 'goto' tetapi, break form extended dapat digunakan dalam tempat 'goto'.
Mari kita lihat, setiap penggunaan 'break' secara detail.
Penggunaan pertama untuk menghentikan eksekusi case in switch. Break in switch hanya memengaruhi switch yang melingkupinya, itu tidak memengaruhi loop yang melingkupi switch.
// Dalam konteks C ++. // gunakan break in switch dalam konteks C ++. switch (ekspresi integer) {case 1: ..... ..... break; kasus 2: ..... ..... istirahat; kasus 3: ..... ..... istirahat; default: ....... .......}
Penggunaan kedua, untuk secara paksa menghentikan loop dan melanjutkan pada pernyataan loop berikutnya. Begitu, pernyataan break ditemui di dalam loop, loop itu segera diakhiri tanpa mengeksekusi kode yang tersisa di tubuh loop itu dan kontrol program mencapai pernyataan berikutnya yang ditulis setelah loop itu.
// gunakan break untuk keluar dari loop dalam konteks ke kelas Java main_class {public static void main (string args []) {for (int i = 0; i <100; i ++) {system.out.println ("i:" + i); if (i == 10) break; // sebagai kondisi di dalam kontrol satistfies 'if' keluar dari loop 'for'. } system.out.println ("Loop putus di sini"); }}
istirahat hanya membiarkan program keluar dari loop yang menutupinya. Jika break digunakan dengan loop bersarang, itu hanya break loop paling dalam dan tidak mempengaruhi loop luar.
Penggunaan ketiga, menggunakan break sebagai bentuk goto. Java menggunakan break sebagai bentuk goto tanpa masalah. Karena goto menyediakan percabangan yang tidak terstruktur yang sulit dipahami dan juga goto melarang pengoptimalan kompiler, Java menggunakan bentuk break yang diperluas yang mirip dengan goto dan membantu untuk keluar lebih dari satu blok pada satu waktu dan melanjutkan kontrol program ke akhir blok berlabel, disebutkan dengan pernyataan istirahat.
Pernyataan:
label istirahat;
Di sini, "label" adalah nama blok kode tertentu atau pengidentifikasi di Jawa, dan blok berlabel ini harus menyertakan pernyataan istirahat. Pernyataan istirahat berlabel digunakan untuk keluar dari set loop bersarang. Ketika pernyataan istirahat berlabel ditemukan kontrol keluar dari blok berlabel yang disebutkan dengan pernyataan istirahat.
Mari kita lihat secara praktis.
// gunakan break sebagai bentuk goto dalam konteks kelas Java main_class {public static void main (string args []) {boolean t = true; first {second {third {system.out.println ("this third block"); jika (t) istirahat dulu; } system.out.println ("blok kedua ini"); } system.out.println ("blok pertama ini"); } system.out.println ("blok utama ini"); }} // output: ini adalah blok ketiga ini adalah blok utama
Dalam kode ini, ketika kontrol mencapai blok ketiga, pernyataan cetaknya dieksekusi dan setelah itu kontrol dilanjutkan ke pernyataan 'jika', dan setelah puas, pernyataan istirahat dengan label dieksekusi. Label terlampir dengan break adalah yang pertama, jadi kontrol resume ke pernyataan yang ditulis setelah akhir blok pertama yaitu di blok utama yang merupakan pernyataan cetak dan yang dijalankan.
Definisi Lanjutkan
Saat break mengakhiri iterasi loop yang tersisa dan membiarkan kontrol keluar dari loop, di sini, melanjutkan kerja agak bekerja seperti istirahat. Pernyataan melanjutkan menghentikan eksekusi kode yang tersisa di loop untuk iterasi saat ini dan melanjutkan kontrol ke iterasi berikutnya dari loop itu. Pernyataan berlanjut melewatkan kode untuk iterasi saat ini dan meneruskan kontrol ke iterasi loop berikutnya.
Mari kita pahami dengan sebuah contoh.
// gunakan continue dalam konteks ke C ++. // mencetak angka genap sampai 100. kelas main_class {public static void main (string args []) {for (int i = 0; i <100; i ++) {if (i% 2! = 0) lanjutkan; // lanjutkan kembali kontrol ke iterasi berikutnya di for loop system.out.println ("i:" + i); }}}
Dalam program di atas, Jika pernyataan 'jika' terpenuhi maka, lanjutkan pernyataan dijalankan, yang tidak mengizinkan pernyataan cetak berikut untuk mengeksekusi dan melanjutkan kontrol ke iterasi berikutnya dari loop 'untuk'. Jika i = 1 maka kondisi 'jika' puas dan terus dijalankan, tanpa mengeksekusi pernyataan cetak untuk nilai ganjil dari 'i' dan, kontrol dilanjutkan ke iterasi loop berikutnya 'untuk i = 2'. Jika i = 2 maka pernyataan 'jika' tidak dipenuhi maka; lanjutkan tidak menjalankan dan mencetak pernyataan mencetak nilai 'i' yang genap.
Perbedaan utama antara Istirahat dan Lanjutkan
- Pada dasarnya, break kata kunci menghentikan sisa iterasi loop yang tersisa. Di sisi lain, kata kunci melanjutkan hanya mengakhiri iterasi saat ini dari loop.
- Setelah kata kunci break dijalankan, kontrol program keluar dari loop dan kembali ke pernyataan berikutnya setelah loop. Dalam kasus kata kunci lanjut, kontrol program dilanjutkan ke iterasi loop berikutnya.
- Seperti langkah di atas menyimpulkan, bahwa setelah pelaksanaan kontrol istirahat dari program keluar dari loop itu jelas dipahami bahwa istirahat menyebabkan penghentian awal dari setiap loop. Di sisi lain, terus hanya menghentikan iterasi saat ini dan melanjutkan ke iterasi berikutnya dari loop maka kita dapat mengatakan bahwa terus menyebabkan eksekusi awal iterasi berikutnya dari loop.
- Kata kunci break menghentikan semua iterasi yang tersisa setelah eksekusi sehingga kita dapat mengatakan bahwa itu menghentikan kelanjutan dari loop sedangkan, kata kunci continue masih melanjutkan eksekusi loop.
- Kata kunci break dapat digunakan bersama dengan pernyataan "switch" dan "label", sedangkan kata kunci continue tidak dapat digunakan dengan "switch" dan "label".
Kesimpulan:
Pernyataan break dan continue keduanya adalah pernyataan lompatan yang mentransfer kontrol ke bagian lain dari program. Di mana pernyataan break membiarkan kontrol keluar dari loop, pernyataan melanjutkan membiarkan kontrol ke iterasi berikutnya dari loop itu.