Struktur cawangan Java
Struktur berjujukan hanya boleh dilaksanakan secara berurutan, dan pertimbangan serta pemilihan tidak boleh dibuat, jadi struktur cawangan diperlukan.
Java mempunyai dua struktur cawangan:
jika kenyataan
penyataan suis
penyataan if
Pernyataan if mengandungi ungkapan Boolean dan satu atau lebih pernyataan.
Sintaks
Sintaks pernyataan If adalah seperti berikut:
if(布尔表达式) { //如果布尔表达式为true将执行的语句 }
Jika nilai ungkapan Boolean adalah benar, blok kod dalam pernyataan if dilaksanakan. Jika tidak, kod berikut blok pernyataan If dilaksanakan.
public class Test { public static void main(String args[]){ int x = 10; if( x < 20 ){ System.out.print("这是 if 语句"); } } }
Hasil penyusunan dan larian kod di atas adalah seperti berikut:
这是 if 语句
if...else statement
Pernyataan if boleh diikuti dengan penyataan else, apabila ungkapan Boolean bagi pernyataan if Apabila nilai ungkapan palsu, blok pernyataan else akan dilaksanakan.
Sintaks
jika...else digunakan seperti berikut:
if(布尔表达式){ //如果布尔表达式的值为true }else{ //如果布尔表达式的值为false }
Contoh
public class Test { public static void main(String args[]){ int x = 30; if( x < 20 ){ System.out.print("这是 if 语句"); }else{ System.out.print("这是 else 语句"); } } }
Hasil penyusunan dan jalankan kod di atas adalah seperti berikut :
这是 else 语句
if...else if...else statement
Pernyataan if boleh diikuti oleh elseif...else statement, yang boleh mengesan pelbagai kemungkinan situasi.
Apabila menggunakan pernyataan if, else if, else, anda perlu memberi perhatian kepada perkara berikut:
Pernyataan if mempunyai paling banyak satu pernyataan lain, dan pernyataan else datang selepas semua pernyataan elseif.
Jika pernyataan boleh mempunyai beberapa pernyataan elseif, ia mesti mendahului pernyataan else.
Sebaik sahaja satu daripada penyataan lain jika mengesan benar, pelaksanaan penyataan lain if and else yang lain akan dilangkau.
Sintaks
jika...lain format sintaks adalah seperti berikut:
if(布尔表达式 1){ //如果布尔表达式 1的值为true执行代码 }else if(布尔表达式 2){ //如果布尔表达式 2的值为true执行代码 }else if(布尔表达式 3){ //如果布尔表达式 3的值为true执行代码 }else { //如果以上布尔表达式都不为true执行代码 }
Contoh
public class Test { public static void main(String args[]){ int x = 30; if( x == 10 ){ System.out.print("Value of X is 10"); }else if( x == 20 ){ System.out.print("Value of X is 20"); }else if( x == 30 ){ System.out.print("Value of X is 30"); }else{ System.out.print("This is else statement"); } } }
Penyusunan kod di atas dan keputusan berjalan adalah seperti berikut:
Value of X is 30
Nested if…else statement
Adalah sah untuk menggunakan nested if-else statement. Ini bermakna anda boleh menggunakan pernyataan if or elseif dalam pernyataan if or elseif yang lain.
Sintaks
Format sintaks if...else bersarang adalah seperti berikut:
if(布尔表达式 1){ ////如果布尔表达式 1的值为true执行代码 if(布尔表达式 2){ ////如果布尔表达式 2的值为true执行代码 } }
Anda boleh bersarang lain jika hanya seperti jika kenyataan ..lain.
Contoh
public class Test { public static void main(String args[]){ int x = 30; int y = 10; if( x == 30 ){ if( y == 10 ){ System.out.print("X = 30 and Y = 10"); } } } }
Hasil penyusunan dan jalankan kod di atas adalah seperti berikut:
X = 30 and Y = 10
penyataan suis
Pernyataan suis menentukan sama ada pembolehubah adalah berkaitan dengan nilai tertentu dalam satu siri nilai Sama ada nilainya sama, setiap nilai dipanggil cawangan.
Tatabahasa
Format sintaks suis adalah seperti berikut:
switch(expression){ case value : //语句 break; //可选 case value : //语句 break; //可选 //你可以有任意数量的case语句 default : //可选 //语句 }
Pernyataan suis mempunyai peraturan berikut:
Jenis pembolehubah dalam pernyataan suis hanya boleh menjadi bait, pendek, int atau char.
Pernyataan suis boleh mempunyai beberapa pernyataan kes. Setiap kes diikuti dengan nilai untuk dibandingkan dan titik bertindih.
Jenis data nilai dalam pernyataan kes mestilah sama dengan jenis data pembolehubah, dan ia hanya boleh menjadi pemalar malar atau literal.
Apabila nilai pembolehubah adalah sama dengan nilai pernyataan kes, pernyataan selepas pernyataan kes mula dilaksanakan, dan pernyataan suis tidak akan melompat keluar sehingga pernyataan putus muncul. 3
Pernyataan suis ditamatkan apabila penyataan putus ditemui. Program melompat ke pernyataan berikutan pernyataan suis untuk pelaksanaan. Kenyataan kes tidak perlu mengandungi kenyataan putus. Jika tiada kenyataan putus muncul, atur cara akan terus melaksanakan pernyataan kes seterusnya sehingga kenyataan putus muncul.
Pernyataan suis boleh mengandungi cawangan lalai, yang mestilah cawangan terakhir pernyataan suis. lalai dilaksanakan apabila nilai tiada pernyataan kes adalah sama dengan nilai pembolehubah. Cawangan lalai tidak memerlukan pernyataan putus.
Contoh
public class Test { public static void main(String args[]){ //char grade = args[0].charAt(0); char grade = 'C'; switch(grade) { case 'A' : System.out.println("Excellent!"); break; case 'B' : case 'C' : System.out.println("Well done"); break; case 'D' : System.out.println("You passed"); case 'F' : System.out.println("Better try again"); break; default : System.out.println("Invalid grade"); } System.out.println("Your grade is " + grade); } }
Hasil penyusunan dan jalankan kod di atas adalah seperti berikut:
Well done Your grade is C