首頁  >  文章  >  Java  >  Java--程式流程控制

Java--程式流程控制

零下一度
零下一度原創
2017-06-25 10:56:291417瀏覽

 

Java程式流程控制 (上)

 Java程式大致分為三種流程控制結構:順序結構、分支結構、循環結構

  • 順序結構

程式由上到下的逐行執行,中間沒有任何跳躍和判斷語句。

範例程式碼如下:

 1 public class TestSortStruc { 2     public static void main(String[] args) { 3         //流程控制:顺序结构 4         int i = 15; 5         int j = i + 1; 6         System.out.println(j); 7          8         /*错误示例,因为n的赋值语句使用到了m,所以不能将m在n后面定义 9          * int n = m + 1;10            int m = 10;11            System.out.println(n);*/12     }13 }

  • #分支結構

  依照條件,選擇性的執行某段程式碼區塊。

  分為if...else和switch..case兩類分支語句。

  一、if語句的三種結構:

#  1. if(true){

#    執行程式碼區塊;}

  範例程式碼如下:

  

1 public class TestIf1 {2     public static void main(String[] args) {3         if(true){4             System.out.println("Hello World!!");5         }6     }7 }

#  2. if(條件判斷語句){

    執行程式碼區塊;}

      else{        執行程式碼區塊;}

  範例程式碼如下:

#  

10re ## 

  3. if(條件判斷語句){

    執行程式碼區塊;}

    執行程式碼區塊;}

   else if(條件判斷語句){

    執行程式碼區塊;}#    執行程式碼區塊;}

#   ......     else{執行程式碼區塊;}

##     else{執行程式碼區塊;}#

 1 public class TestIf2 { 2     public static void main(String[] args) { 3         int age = 21; 4         if(age>18){ 5             System.out.println("你已经成年了!!"); 6         }else{ 7             System.out.println("你还没有成年!!"); 8         } 9     }10 }

  透過鍵盤取得值,然後使用if判斷語句進行判斷學生成績,使用Scanner對象,讓使用者在控制台輸入值

#  

範例程式碼如下:  

 1 public class TestIf3{ 2     public static void main(String[] args) { 3         int age = 26; 4         
 5         if(age > 130 || age < 0){ 6             System.out.println("估计不是人吧!!"); 7         }else if(age <30){ 8             System.out.println("你还挺年轻!!只有"+ age +"岁"); 9         }else{10             System.out.println("我都是孩子他爹了,你另找心上人吧!!");11         }12     }13 }

   註:1.if條件判斷之間可以進行巢狀;

     2. 1)如果多個條件之間是「互斥」關係,那麼條件語句的順序是自由的;

       2)如果

       2)如果

       2)如果       2)如果多個條件之間是「包含」關係,那麼要求範圍小的條件要寫在範圍大的條件上面。

  二、switch...case語句:

#  

switch(表達式){

#  case 常數1:

    語句1;

#    break;

[  case

#########  常量:##################    語句2;##################    break;############    break;######### ##########  ......###################  case 常數n:########################################################## ######    語句n;###################    break;##################"  break;##################" #################    語句;##################    break;#############    break;############# #######  }###################  根據表達式的值,選擇對應的case去判斷,一旦滿足case條件,就執行相應case下的語句。 ###############  switch 後小括號裡面的表達式的值的資料型別包含:char、byte、short、int、枚舉、String(JDK1.7以上才能使用String類型)。 ############  case後面接著的常數只能為準確的值,而不能為取值範圍。 ###############  範例程式碼如下:#############
 1 /*题目: 2  * 从键盘输入自己的考试成绩 3  * 当成绩为100分时,奖励一台外星人电脑 4  * 当成绩在80~99时,奖励一部iPhone7 plus 5  * 当成绩在60~80时,奖励一本考试科目的习题册 6  * 成绩低于60时,没有奖励,需要连续三个月不许玩游戏看电视。*/ 7 //1.导入Scanner包,记住一定要是java.util下的Scanner包 8 import java.util.Scanner; 9 10 public class TestScanner {11     public static void main(String[] args) {12         //2.new 一个Scanner对象sc13         Scanner sc = new Scanner(System.in);14         /*3.从键盘获取用户输入的值,因为要判断成绩,15             所以规定输入的值是int类型的数字,使用nextInt()方法*/16         System.out.println("请输入你的成绩:");17         int grade = sc.nextInt();18         //使用if判断语句进行成绩奖励判断19         if(grade == 100){20             System.out.println("恭喜你,获得一台外星人电脑!!");21         }else if(grade < 100 && grade >= 80){22             System.out.println("恭喜你,获得一部iPhone7 plus!!");23         }else if(grade < 80 && grade >=60 ){24             System.out.println("恭喜你,你需要完成一本本学科的习题册!!");25         }else{26             System.out.println("很遗憾,你在未来的三个月不能玩游戏,看电视!!");27         }28     }29 }
###

  註:如果沒有break或已經到結尾的話,會繼續向下執行其他的case語句,如果只想得到某一個值,需要都加上break關鍵字;default雖為結尾語句,但是可以寫在      switch中任何一個case前或後面,但是不能寫進case裡面,但是習慣性的放在末尾,default也可以不寫。

  • 循環結構

#  透過循環條件,重複性的執行某段程式碼區塊,直到該條件不被滿足。

  分為while、do..while、for迴圈三種迴圈語句。

  註:在JDK1.5中提供了foreach循環,更方便用於便利集合和陣列元素。

  循環結構是最常用的也最重要的,故此講其單獨放在(下)篇進行梳理。

以上是Java--程式流程控制的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn