Java流程控制

Java流程控制

一、順序結構

  • Java的基本結構就是順序結構,除非特別指明,不然就按順序一步一步執行算法

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

二、選擇結構

2.一、if

if單選擇結構數組

//語法
if(布爾表達式){
   //若是表達式爲真,則會執行的代碼
}

//舉例
if(2 > 0){
   System.out.println("2是比0大的");
}

if雙選擇結構spa

//語法
if(布爾表達式){
   //若是表達式爲真,則會執行的代碼
}else{
   //若是表達式爲假,則會執行的代碼
}

//舉例
public static void main(String[] args) {
   int score = 55;
   if(score >= 60){
       System.out.println("您的成績合格!");
  }else{
       System.out.println("您的成績不合格!");
  }
}

if多選擇結構code

//語法
if(布爾表達式1){
   //若是表達式1爲真,則會執行的代碼
}else if(布爾表達式2){
   //若是表達式2爲真,則會執行的代碼
}else if(布爾表達式3){
   //若是表達式3爲真,則會執行的代碼
}else{
   //若是以上表達式都不爲真,則會執行的代碼
}

//舉例
public static void main(String[] args) {

   int score = 75;
   
   if (score == 100){
       System.out.println("您的成績爲A級,分數爲:" + score);
  }else if(score >= 90){
       System.out.println("您的成績爲B級,分數爲:" + score);
  }else if(score >= 80 && score < 90){
       System.out.println("您的成績爲C級,分數爲:" + score);
  }else if(score >= 70 && score < 80){
       System.out.println("您的成績爲D級,分數爲:" + score);
  }else if(score >= 60 && score < 70){
       System.out.println("您的成績爲E級,分數爲:" + score);
  }else{
       System.out.println("您的成績不合格,分數爲:" + score);
  }
}

嵌套if作用域

能夠在 if() 或者 else if() 中嵌套使用if選擇結構,解決一些較爲複雜的問題。string

2.二、switch

//語法
switch(expression){
   case value1:
       //語句
       break;
case value2:
       //語句
       break;
case value3:
       //語句
       break;
   default:
       //語句
}

//舉例
public static void main(String[] args) {

   char code = 'C';

   switch (code){
       case 'A':
           System.out.println("這個字符爲A");
           //break;
       case 'B':
           System.out.println("這個字符爲B");
           //break;
       case 'C':
           System.out.println("這個字符爲C");
           //break;
       default:
           System.out.println("這個符不是A、B、C");
  }
}
  • 注意點it

    • value的類型能夠是int、byte、short、char或者String類型io

    • break是可選的,可寫可不寫,若是不寫則會出現case滲透現象for循環

      case滲透:若是 expression 的值等於其中某個 value,就會進入這個 case 分支裏執行其中的語句,可是執行完這個分支裏的語句以後程序並不會結束,而是執行後面全部的case分支,直到碰見break語句或者執行到最後,程序纔會終止。

三、循環結構

循環三要素:初始值、判斷循環是否終止的條件、更新,三者缺一便會造成死循環

3.一、while循環

//語法
while(布爾表達式){
   //布爾表達式爲真時的循環語句
}

//舉例
public static void main(String[] args) {
   
   //i = 1 爲初始值
   int i = 1;
   //i <= 100 布爾表達式,即判斷循環是否終止的條件
   while(i <= 100){
       System.out.println("i的值爲:" + i);
       //i++ 爲更新,即改變循環控制變量值以求愈來愈接近於循環終止的條件
       i++;
  }
}
  • while循環是先判斷後執行,因此若是布爾表達式爲假,則循環語句一次都不會執行

3.二、do while循環

//語法
do{
   //循環語句
}
while(布爾表達式);

//舉例
public static void main(String[] args) {

   int i = 1;

   do {
       System.out.println("i的值爲:" + i);
       i++;
  }while (i < 100);
}
  • do while循環是先執行後判斷,因此無論布爾表達式爲真或者爲假,則循環語句至少會執行一次

3.三、for循環

//語法
for(初始值;布爾表達式;更新){
   //循環語句
}

//舉例
public static void main(String[] args) {
   
   for (int x = 1; x <= 100; x++) {
       System.out.println(x);
  }
}
  • for循環執行順序:

    • 先執行初始化步驟,能夠在其中聲明類型,也可在循環體外提早聲明,可初始化一個或者多個循環控制變量

    • 其次檢測布爾表達式的值,若是值爲真,執行循環語句,不然結束循環

    • 執行一次循環後,更新循環控制變量的值

    • 再次檢查布爾表達式的值,循環執行上面的過程

3.二、加強for循環

//語法
for(聲明語句:表達式){
   //循環語句
}

//舉例
public static void main(String[] args) {

   int[] arrays = {10,20,30,40,50,60};
   for (int i : arrays) {
       System.out.println(i);
  }
}
  • 聲明語句:聲明新的局部變量,該變量的類型必須和數組元素的類型匹配,其做用域限定在循環語句塊,其值與此時數組元素的值相等。

  • 表達式:要訪問的數組名或者返回值爲數組的方法。

四、break、continue

  • break可用於任何循環結構的主體部分,強行退出循環,不執行循環中剩下的語句。

  • continue用於循環語句體中,用於終止某次循環過程,即跳過循環體中還沒有執行的語句,進行下一次是否進行循環的判斷。

相關文章
相關標籤/搜索