Java SE ---流程控制語句

 java的控制流程有三種:
一,順序流程            
   自上而下,按照代碼的前後順序執行
二,分支流程            
   1,if/else語句            
   2,switch/case語句
三,循環流程             
   1,for循環            
           2,while循環             
           3,do while循環
 
先來講說分支流程裏的if的用法:if有如下三種方式:
第一種形式:
     if(布爾表達式) {
            //待執行的代碼 
     }
 
第二種形式:
     if(布爾表達式) { 
            //待執行的代碼 
     } else { 
            //待執行的代碼 
     }
 
 第三種形式:
     if(布爾表達式) { 
            //待執行的代碼 
     } else if(布爾表達式) { 
            //待執行的代碼 
     } else if(布爾表達式) {
            //待執行的代碼 
     } else { 
            //待執行的代碼 
     }
來三組例子更形象:   int a = 2;
int b = 2;
 
if(a > b) {
System.out.println("星期天在家學習 ");
        }
 
---------------------------------------------------------
  int a = 11;
int b = 3;
if(a > b) {
System.out.println("a > b ");
} else {
System.out.println("a =< b ");
------------------------------------------------------------
int a = 11;
int b = 3;                   if(a > b) {
System.out.println("a > b ");
} else if (a < b) {
System.out.println("a < b ");
} else {
System.out.println("a = b ");
}
---------------------------------------
String pwd = "hellojava";
if(pwd != null && pwd.length() != 6) {
System.out.println("密碼長度不正確,請輸入6位密碼!");
} else {
System.out.println("請稍等,正在驗證密碼!");
}  
-----------------  
 
接下來講說switch/case語句:
switch/case語句的語法結構是: switch(變量a) {     // 這裏switch變量a的類型是有規定的,能夠是byte,short,int,char,enum這五種裏的某一種
case 開關值1: 該開關下執行的語句
case 開關值2: 該開關下執行的語句
case 開關值3: 該開關下執行的語句
case 開關值4: 該開關下執行的語句
......
default: 變量值跟開關值都不符合的狀況下後執行
}  

實例以下:
int a = 3;
switch(a) {
case 0: System.out.println("a = 0");
case 1: System.out.println("a = 1");
case 2: System.out.println("a = 2");
case 3: System.out.println("a = 3");
default:System.out.println("a = 4");
}  
 
最終的運行結果是:a=3 ,
當咱們加上break switch的運行過程是:把 a的值與case的開關值比較,若a跟某個開關值相等,就執行該開關下的語句。若是a的值跟全部case開關值都不一樣,則執行default分支下的語句。 何時退出switch語句,取決於什麼時候遇到break語句。要是沒有遇到break語句,就繼續執行下面的case語句,知道遇到第一個break語句才退出,不然一直運行到switch流程結束。 
 
例子以下:
  int a = 1;
switch(a) {
case 0: System.out.println("a = 0");
case 1: System.out.println("a = 1");
case 2: System.out.println("a = 2");
case 3: System.out.println("a = 3");                        
break; 
default:System.out.println("a = 4");

java

運行結果是:a = 1   a = 2   a = 3 。web

由於變量a跟開關1的值相同,因此執行case1語句,一直往下執行case2,case3,遇到break就跳出switch流程,因此a = 1   a = 2   a = 3 。 學習

 

再來講說循環流程的3種形式: spa

1. for 循環(使用最多的一種循環)形式爲:        orm

for(變量初始化;     條件判斷;     步進)  { 
            //待執行的代碼          ci

}  it

for循環執行的流程是: for循環

         1) 執行變量初始化   
        2) 執行條件判斷。若是條件判斷爲假,那麼退出for循環,開始執行循環後面的代碼;
                                           若是條件判斷爲真,執行for循環裏面的代碼。 
        3) 執行步進 
        4) 重複步驟2

 例子:求出1-100之間的奇數之和。 form

int sum = 0;
for(int i = 1; i < 100; i = i +2) {
sum += i;  //等價於sum = sum + i;
}

System.out.println("0-100之間的奇數之和" + sum);
運行結果是:1-100之間的奇數之和2500  class

2, while 循環形式爲: 先判斷while裏的布爾表達式,爲真的話就執行代碼;布爾表達式爲假,while的循環體就一次也不執行。        

while(布爾表達式)  {            

      //待執行的代碼         

例子:求出0-100之間的整數之和

int a = 1;

int sum = 0;

while(a <= 100) {

sum += a;  //等價於 sum = sum + a;

a++;

}

System.out.println("1-100的整數之和===" + sum);

 運行結果是:1-100的整數之和===5050

 

3.  do…while 循環爲: 先執行do裏的代碼,接着判斷while裏的布爾表達式,爲真的話再接着執行do裏的代碼,知道遇到while裏的布爾表達式爲假才跳出。注意while後有個分號       

do {             

//待執行的代碼        

 }        

while();

 

具體例子以下:求出0-100之間的偶數之和。

int a = 0;

int sum = 0;

do{

sum += a;

a = a + 2;

}

while(a <= 100);

System.out.println("0-100之間的偶數之和 ===" + sum);  
最終的運行結果是: 0-100之間的偶數之和 ===2550    
         
while與do…while之間的區別
若是布爾表達式的第一次判斷就爲false,那麼while循環一次也不執行;do…while循環則會執行一次。
若是布爾表達式第一次判斷爲true,那麼while循環與do…while循環是同樣的。
例子以下:  
int k = 4;

while(k < 2) {

System.out.println("hello wolrd");

}

do{  System.out.println("welcomt to java");

}

while(k < 2); 運行結果是: welcomt to java

相關文章
相關標籤/搜索