1. 程式人生 > >Java入門教程三(流程控制)

Java入門教程三(流程控制)

概述

程式有 3 種結構:順序結構、選擇結構和迴圈結構。分別為:if elseswitch case,while與do while,for, foreach,return,break ,continue

if else

if 選擇結構是根據條件判斷之後再做處理的一種語法結構。預設情況下,if 語句控制著下方緊跟的一條語句的執行。不過,通過語句塊,if 語句可以控制多個語句。

public static void main(String[] args)
{
    int a=1,b=2;
    if(a>b){
        System.out.println("a大於b");
    }else{
        System.out.println("a小於b");
    }
}

swithc case

switch 語句能解決 if 分支過多的情況,提供一種簡潔的方法來處理對應給定表示式的多種情況。

public static void main(String[] args)
{
     int a=1;
     switch(a)
     {
         case 2:
             System.out.println("2");
             break;
         case 3:
             System.out.println("3");
             break;
         case 4:
             System.out.println("4");
             break;
         default:
             System.out.println("1");
             break;
     }
}

while與do while

while

while 迴圈語句可以在一定條件下重複執行一段程式碼。該語句需要判斷一個測試條件,如果該條件為真,則執行迴圈語句(迴圈語句可以是一條或多條),否則跳出迴圈。

public static void main(String[] args)
{
    int a=0,b=0;
    while(a<10)
    {
        b++;
    }//b為10
}

do while

do…while 迴圈語句也是 Java 中運用廣泛的迴圈語句,它由迴圈條件和迴圈體組成,但它與 while 語句略有不同。do…while 迴圈語句的特點是先執行迴圈體,然後判斷迴圈條件是否成立。

public static void main(String[] args)
{
    int a=0,b=0;
    do
    {
        b++;
    }while (a<10);//b為10
}

for

for 語句是一種在程式執行前就要先判斷條件表示式是否為真的迴圈語句。假如條件表示式的結果為假,那麼它的迴圈語句根本不會執行。for 語句通常使用在知道迴圈次數的迴圈中。

public static void main(String[] args)
{
    int a=0;
    for(int i=0;i<5;i++)
    {
        a++;//a為5
    }
}

foreach

foreach 迴圈語句是 for 語句的特殊簡化版本,主要用於執行遍歷功能的迴圈。

public static void main(String[] args)
{
    String[] a={"HelloWorld","HelloWorld","HelloWorld","HelloWorld"};
    //使用 foreach 迴圈語句遍歷陣列
    for(String b: a)
    {
        System.out.println(b);//全部輸出HelloWorld
    }
}

return

return 語句用於終止函式的執行或退出類的方法,並把控制權返回該方法的呼叫者。如果這個方法帶有返回型別,return 語句就必須返回這個型別的值;如果這個方法沒有返回值,可以使用沒有表示式的 return 語句。

public static int main()
{
    return 1;//該方法體返回1
}

break

在 switch 語句中終止一個語句序列、使用 break 語句直接強行退出迴圈和使用 break 語句實現 goto 的功能。

在 switch 語句中終止一個語句序列

在 switch 語句中終止一個語句序列,就是在每個 case 子句塊的最後新增語句“break;”

public static void main(String[] args)
{
     int a=1;
     switch(a)
     {
         case 1:
             System.out.println("a等於1直接跳出");
             break;
         default:
             System.out.println("預設跳出與!");
             break;
     }
}

使用 break 語句直接強行退出迴圈

可以使用 break 語句強行退出迴圈,忽略迴圈體中的任何其他語句和迴圈的條件判斷。在迴圈中遇到 break 語句時,迴圈被終止,在迴圈後面的語句重新開始。

public static void main(String[] args)
{
    for(int i=0;i<10;i++)
    {
        if(i==5){
            System.out.println("i為5時跳出迴圈");
            break;
        }
    }
}

使用 break 語句實現 goto 的功能

break 語句可以實現 goto 的功能,並且 Java 定義了 break 語句的一種擴充套件形式來處理退出巢狀很深的迴圈這個問題。

public static void main(String[] args)
{
    label:for(int i=0;i<10;i++)
    {
        for(int j=0;j<8;j++)
        {
            System.out.println(j);
            if(j%2!=0)
                break label;
            }
        }
    }
}
//輸出0、1

continue

continue 語句是跳過迴圈體中剩餘的語句而強制執行下一次迴圈,其作用為結束本次迴圈,即跳過迴圈體中下面尚未執行的語句,接著進行下一次是否執行迴圈的判定。

public static void main(String[] args)
{
    for(int i=0;i<10;i++)
    {
        if(i>2)//如果i>6執行下一次迴圈
        {    
            continue;
        }
        System.out.println(i);
    }
}
//輸出0、1、2