1. 程式人生 > 實用技巧 >部署標準交換機和分散式交換機(三)

部署標準交換機和分散式交換機(三)

java的流程控制結構有三種:順序、選擇、迴圈


順序結構:

  • Java的基本結構就是順序結構,除非特別指明,否則就是按照順序一句一句執行。

  • 順序結構是最簡單的演算法結構。

  • 語句與語句之間,框與框之間是按從上到下的順序進行的,它是由若干個依次執行的處理步驟組成的,它是任何一個演算法都離不開的一種基本演算法結構


選擇結構:

我們很多時候需要去判斷一個東西是否可行,然後我們才去執行,這樣一個過程在程式中用選擇語句來表達。

在java中,選擇結構分為 if-else 語句和 switch 語句。

首先我們來看下if-else語句:

if單選擇結構:

語法:

if(布林型別表示式){
    語句或語句塊
}

注意:if括號裡表示式的值返回的必須是布林型別

  例如:

public static void main(String[] args) {
        Scanner scanner 
= new Scanner(System.in); ​ System.out.println("請輸入內容:"); String s = scanner.nextLine(); ​ if (s.equals("Hello")) System.out.println(s); ​ ​ scanner.close(); }

  在這裡的s.equals的意思是判斷s所表示的字串是否和後面的Hello相同,當判斷字串時儘量別用 == 。

if雙選擇結構:

語法:

if(布林型別表示式){
    語句或語句塊
}
else{ 語句或語句塊 }

 例如:

public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
​
        System.out.println("請輸入:");
        int score = scanner.nextInt();
        if(score>=60){
            System.out.println("及格");
        }else{
            System.out.println("不及格");
        }
​
        scanner.close();
    }

if多選擇結構:

很多選擇不僅僅只有兩個,所以要用多選擇結構處理。

語法:

if(布林表示式1){
    //如果布林表示式1為true將執行的語句
}else if(布林表示式2){
    //如果布林表示式2為true將執行的語句
}else if(布林表示式3){
    //如果布林表示式3為true將執行的語句
}else{
    //如果以上布林表示式都不為true將執行的語句
}

備註:1.在多支語句中,這多種情形是一種互斥關係,非你即我,只有一種情形會成立,程式也只會執行條件裡面的一種程式碼。

   2.在多支語句中,如果最後一種情形它包含了它以上情形之外的所有情形,那麼該種情形也可以這樣表達,省略if(條件)。

例如:

     int per = 76;
        if(per == 100){
            System.out.println("進1v1名師輔導班");
        }else if(per >= 90 && per < 100){
            System.out.println("進狀元班");
        }else if (per >= 80 && per < 90){
            System.out.println("進尖子班");
        }else if (per >= 70 && per < 80){
            System.out.println("進珍珠班");
        }else if (per >= 60 && per < 70){
            System.out.println("進普通班");
        }else  if(per < 60){
            System.out.println("不錄取");
        }

  

if巢狀結構:

在一個if裡再加一個if。

語法:

if(布林型別表示式1){
  //如果布林表示式1為true將執行的語句
if(布林型別表示式2){
//如果布林表示式2為true將執行的語句 語句或語句塊 }
else{
   //如果布林表示式2為false將執行的語句 語句或語句塊 } }
else{
  //如果布林表示式1為false將執行的語句
if(布林型別表示式2){
  //如果布林表示式2為true將執行的語句 語句或語句塊 }
else{
  //如果布林表示式2為false將執行的語句 語句或語句塊 } }

例如:

String sex = ""double money = 18000if (sex.equals("")) {
            if (money >= 20000) {
                System.out.println("女生眼中的高富帥");
            } else if(money < 8000){
                System.out.println("女生眼中的屌絲");
            }
        }else if (sex.equals("")){
            if (money >= 12000){
                System.out.println("男生眼中的白富美");
            }else if (money <= 3000){
                System.out.println("男生眼中的女屌絲");
            }
        }

  

switch多選擇結構:

switch原理:

switch流程圖:

switch case語句判斷一個變數與一系列值中某個值是否相等,每個值稱為一個分支。

語法:

switch(表示式){
case 常量值1:
    語句塊;
    break;
case 常量值2:
    語句塊;
    break;
case 常量值3:
    語句塊;
    break;
        ..
default:
    語句塊;
    break;
}

  

注意:

1)switch中表達式的返回值只能是 int,byte,char,short,列舉,字串;

2)case子句中的值必須是常量,且不能重複;

3)default可有可無

4)break作為某一個case程式碼段的結束句,使其跳出程式。

5)case 情形之間也是一種互斥關係,非你即我。

public static void main(String[] args) {
    Scanner scan = new Scanner(System.in);
    System.out.println("今天星期幾了?");
    int week = scan.nextInt();
         
    switch(week){
    case 1:
        System.out.println("Monday");
        break;
    case 2:
        System.out.println("Tuesday");
        break;
    case 3:
        System.out.println("Wednesday");
        break;
    case 4:
        System.out.println("Thursday");
        break;
    case 5:
        System.out.println("Friday");
        break;
    case 6:
        System.out.println("Saturday");
        break;
    case 7:
        System.out.println("Sunday");
        break;
    default:
        System.out.println("Sorry,i don't know!");
    }
}

  


迴圈結構:

順序結構的程式語句只能 被執行一次。如果你要同樣的操作執行多次,就需要使用迴圈結構。

java中有三種主要的迴圈結構:while迴圈 do-while迴圈 for迴圈

1.while迴圈

while迴圈不知道迴圈次數。先判斷,再迴圈。常用死迴圈。

while是最基本的迴圈,它的語法為:


  while(迴圈條件)
  {
    迴圈語句
  }
  只要迴圈條件的結果為真,就執行迴圈語句

注意:一定要有退出迴圈的條件,否則會形成無限迴圈

例如:

public class Test {
    public static void main(String args[]) {
        int x = 10;
        while (x < 20) {
            System.out.print("value of x :" + x);
            x++;
            System.out.print("\n");
        }
    }
}

以上例項編譯執行結構如下:

value of x : 10
value of x : 11
...
value of x : 19

2.do…while迴圈

對於while語句而言,如果不滿足條件,則不能進入迴圈。但有時候我們需要即使不滿足條件,也至少 執行一次。
do…while迴圈和while迴圈相同,不同的是,
do…while迴圈至少會執行一次。

do…while迴圈的語法為:

do {
         執行語句
} while(迴圈條件);

注意:布林表示式在迴圈體的後面,所以語句塊在檢測布林表示式之前已經執行了。如果布林表示式值為true,則語句塊一直執行,直到布林表示式的值為false。

例如:

public class Test {
    public static void main(Staing args[]) {
        int x = 10;
        do {
            System.out.print("value of x :" + x);
            x++;
            System.out.print("\n");
        } while (x < 20);
    }
}

以上例項編譯執行結果如下:

value of x : 10
...
value of x :19

3.for迴圈

雖然所有迴圈結構都可以用while或者do…while表示,但java提供了另一種語句(for迴圈),使一些迴圈結構變得更簡單。

for迴圈的流程:

for迴圈的語法為:

for(初始化語句;判斷條件語句;控制條件語句){
迴圈體語句;
}

註釋:(1)初始化語句:一條或者多條語句,這些語句完成一些初始化操作
   (2)判斷條件語句:這是一個boolean 表示式,這個表示式能決定是否執行迴圈體
   (3)迴圈體語句:這個部分是迴圈體語句,也就是我們要多次做的事情
   (4)控制條件語句:這個部分在一次迴圈體結束後,下一次迴圈判斷條件執行前執行。通過用於控制循 環條件中的變數,使得迴圈在合適的時候結束

例如:

public class Test{
        public static void main (Staing args[ ]){
        for(int x=10;x<20;x=x+1){
        System.out.print("value of x :"+x);
        System.out.print("\n");
                }
            }
    }

編譯執行結果如下:

value of x :10
...
value of x :19

4.增強for迴圈

增強for迴圈的語法:

    for(宣告語句:表示式){
        //程式碼句子
    }

宣告語句:宣告新的區域性變數,該變數的型別必須和陣列元素的型別匹配。其作用域限定在迴圈語句塊,其值與此時陣列元素的值相等。

表示式:表示式是要訪問的陣列名,或者是返回值為陣列的方法。

例如:

public class test {
    public static void main(String args[]) {
        int[] numbers = { 10, 20, 30, 40, 50 };
        for (int x : numbers) {
            System.out.print(x);
            System.out.print(",");
        }
        System.out.print("\n");
        String[] names = { "James", "Larry", "Tom", "Lacy" };
        for (String name : names) {
            System.out.print(name);
            System.out.print(",");
        }
    }
}

編譯執行如下:

1020304050,
James,Larry,Tom,Lacy,

跳出迴圈的關鍵字:

break關鍵字:

break主要用在迴圈語句或者switch語句中,用來跳出整個語句塊。
break跳出最裡面的迴圈,並且繼續執行該迴圈下面的語句。

break例項:

public class Test {
   public static void main(String args[]) {
      int [] numbers = {10, 20, 30, 40, 50};

      for(int x : numbers ) {
         // x 等於 30 時跳出迴圈
         if( x == 30 ) {
            break;
         }
         System.out.print( x );
         System.out.print("\n");
      }
   }
}

以上例項編譯執行結果如下:

10
20

continue 關鍵字:

continue 適用於任何迴圈控制結構中。作用是讓程式立刻跳到下一次迴圈的迭代。
在for迴圈中,continue語句使程式立即跳轉到更新語句。
在while或者do...while迴圈中,程式立即跳轉到布林表示式的判斷語句。

continue 例項:

public class Test {
   public static void main(String args[]) {
      int [] numbers = {10, 20, 30, 40, 50};

      for(int x : numbers ) {
         if( x == 30 ) {
        continue;
         }
         System.out.print( x );
         System.out.print("\n");
      }
   }
}

以上例項編譯執行結果如下:

10
20
40
50

return 關鍵字:

直接結束當前main方法,遇到return後,方法中的所有程式碼將不再執行。
注意:程式中要減少return的使用頻率。一旦使用return,整個main方法結束