Java melanjutkan di akhir if

Saya memiliki beberapa contoh kode dari sebuah buku dan penulisnya selalu menggunakan continue di akhir if.

Contoh:

int a = 5;
if(a == 5)
{
// some code
continue;
}

Bagi saya, hal ini tidak masuk akal. Mungkinkah ada semacam alasan manajemen kualitas di baliknya atau saya hanya melewatkan poin yang lebih besar?

Larutan

Mungkin potongan kode tersebut berada di dalam sebuah perulangan (for/while/do...while)? Jika tidak, maka tidak masuk akal jika kita meletakkan continue di dalam pernyataan bersyarat.

Faktanya, continue yang tidak bersarang (misal: yang tidak bersarang di suatu tempat di dalam pernyataan perulangan) akan menghasilkan kesalahan continue tidak dapat digunakan di luar perulangan pada saat kompilasi.

Komentar (1)

Continue digunakan untuk melanjutkan ke iterasi berikutnya dari sebuah perulangan. Jadi, sesuatu seperti ini akan masuk akal. Sekarang Anda dapat menggunakan kondisi apapun (kondisi Anda adalah a==5 untuk di-break), dan logika bisnis apapun yang Anda inginkan (contoh saya adalah contoh konyol yang dibuat-buat).

StringBuilder sb = new StringBuilder();
for(String str : strings) {
    sb.append(str);
    if(str.length() == 0) continue; // next loop if empty

    str = str.substring(1);
    sb.append(str);
    if(str.length() == 0) continue; // next loop if empty

    str = str.substring(1);
    sb.append(str);
    if(str.length() == 0) continue; // next loop if empty

    sb.append(str);
}
Komentar (2)

Biasanya, continue digunakan untuk melepaskan diri dari loop yang bersarang dalam, atau hanya untuk kejelasan (bisa diperdebatkan).

Kadang-kadang continue juga digunakan sebagai placeholder untuk membuat badan perulangan yang kosong menjadi lebih jelas.

for (count = 0; foo.moreData(); count++)
  continue;

Ini adalah masalah selera, saya pribadi tidak menggunakan continue.

Komentar (0)