java中的流程式控制制語句,在對於java應用是至關重要的,當然了,對於其他語言也這樣的。下面就介紹一些經常要用的,沒有說的,歡迎大家補充。
1. 條件運算子(三元運算式)
int a = 10;int b = 9;int c = a < b ? 6 : 9;System.out.println(c); //9
如上面的例子,c的值取決於a與b比較後的結果是true還是false。三元運算式,“?”左邊的結果是個boolean值,如上例,如果a<b的結果是true的話,那麼c的值就為6,反之則為9,上例中a<b為false,所以c的值為9.
2. if.....else的用法
if....else就不需要過多介紹,不過以前我都是喜歡判斷true,導致嵌套很多if...else,其實可以試試判斷false,這樣嵌套就不太深了。
if(!true) { //TODO}// 如果是錯的,上段代碼快將不執行。 3. switch的用法
switch語句可以說是選擇語句,它是根據變數的值來確定執行哪個語句。
int i = 1;switch (i) {case 0:System.out.println("0 invoked");break;case 1:System.out.println("1 invoked");break;case 2:System.out.println("2 invoked");break;default:System.out.println("default invoked");}
// 輸出結果是 1 invoked
其中,變數i的類型一般是byte,short,int,char,枚舉類型也可以,jdk1.7可以使用String,個人不習慣用String。"case 0"中的"0"是常量,在變數i的值與之匹配的話,就會執行該分支的代碼;break的跳出該代碼塊,如果break不寫的話,會一直向下執行,直到遇到break或者switch執行完畢;如果變數與常量都不匹配,那就執行default的代碼。所以上例中會執行"case
1”的代碼。
4. break的用法
for(int i = 0; i < 10; i++) {if(3 == i) {break;}System.out.print(i + " "); //0 1 2 }
上例中,當break的時候,會跳出整個迴圈,執行迴圈後面的代碼。
5. continue的用法
for(int i = 0; i < 10; i++) {if(3 == i) {continue;}System.out.print(i + " "); //0 1 2 4 5 6 7 8 9 }
上例中,當continue的時候,會跳出當前迴圈,然後繼續執行下一個迴圈。
上述2個例子,使用了for迴圈語句,下面就不再贅述。
6. while迴圈的用法
while (condition) {// 待執行代碼}
其中,condition為布林運算式,一定要注意跳出迴圈的條件,不然會造成死迴圈。
7. do..while迴圈的用法
do {//待執行代碼}while(conditon);
沒什麼好介紹的,while與do...while的區別:如果布林運算式第一次判斷為false,那麼while迴圈一次也不執行,do..while會執行一次;如果布林運算式第一次判斷為true,那麼兩者是等價的。
其實開發中,基本就是這些流程式控制制語句的組合,以後會慢慢接觸,到時候會有更加深刻的印象。