Java入門(五)之循環與判斷


Java入門之循環與判斷

1. 循環結構

1. while語句

while(布爾表達式){
	//循環內容
}
//例子
while(true){
	System.out.println("無限循環");
}

int i = 100;
while(i){
	i--;
	System.out.println("還有"+i+"次循環就結束啦。");
}

2. do...while語句(不常用)

while語句如果不滿足條件,就不會執行。但是do...while語句即使不滿足條件,也會執行一次。

do {
       //代碼語句
    System.out.println("就算是錯的我也能運行鴨");
}while(false);

3. for循環語句

/*
	1. 初始值是指初始化的值,我們可以在for語句內定義,也可以在for語句外先定義好這個值。
	但是我們必須在此處賦予它一個初始化的值,例如從0開始。例如:int i = 1;或i = 1;
	2. 布爾表達式,當結果為false時,循環結束。
	3. 更新,每次循環后,可以做一個更新的動作。比如i++,即每次循環后i加一。
*/
for(初始值;布爾表達式;更新){
	//代碼語句
}
/*
	實例
*/
 for(int x = 10; x < 20; x = x+1) {
     System.out.println("我是第" + x + "個數。");
 }

4. 增強的for循環

/*
	Java5 引入了一種主要用於數組的增強型 for 循環。
	Java 增強 for 循環語法格式如下:
*/
for(聲明語句 : 表達式)
{
   //代碼句子
}
/*
	那么,什么情況下可以用這樣的for循環呢
	當你要循環一個數組對象的時候,就可以使用了。
*/
int [] nums = {10, 20, 30, 40, 50};
for(int i:nums){
     System.out.print( x );
     System.out.print(",");
}

2. 條件語句

1. if語句

/*
	我們可以使用if語句來判斷條件
*/
if(布爾表達式){
    //代碼句子
}
/*
	實例
*/
int x = 100;
if(x%2 == 0){
    System.out.println("x是偶數。");
}

2. if...else

/*
	if語句后可以跟else語句,當條件為false時,執行else語句
*/
if(布爾表達式){
    //代碼句子
}else{
    //代碼
}
/*
	實例
*/
int x = 100;
if(x%2 == 0){
    System.out.println("x是偶數。");
}else{
    System.out.println("x是奇數。");
}

3. if...else if...else

/*
	if語句可以進行多重嵌套
*/
if(布爾表達式 1){
   //如果布爾表達式 1的值為true執行代碼
}else if(布爾表達式 2){
   //如果布爾表達式 2的值為true執行代碼
}else if(布爾表達式 3){
   //如果布爾表達式 3的值為true執行代碼
}else {
   //如果以上布爾表達式都不為true執行代碼
}
/*
	實例
*/
int score = 66;
if(score >= 90){
    System.out.println("優秀");
}else if(score >= 80){
   	System.out.println("良好");
}else if(score >= 60){
 	System.out.println("合格");
}else {
   System.out.println("奧力給");
}

4. 嵌套的if...else

/*
	我們可以使用套娃式的寫if語句
*/
if(布爾表達式){
    //代碼
    if(布爾表達式){
        //代碼
    }
    //代碼
}
/*
	嵌套的if語句即我們可以在if語句內再加上新的if語句,這只是一個用法,而不是新的語句。
	不僅可以在if語句中加入if語句,也能在else語句中加入
	不僅可以嵌套if語句,也可以嵌套if...else語句
	以上是廢話,無聊可以看看
	實例
	|
	v
*/
int num = 6
if(num % 2 == 0){
    if(num > 0){
        System.out.println("這是一個大於 0 的偶數");
    }else{
        System.out.println("這是一個不大於 0 的偶數");
    }
}else{
    if(num > 0){
        System.out.println("這是一個大於 0 的奇數");
    }else{
        System.out.println("這是一個不大於 0 的奇數");
    }
}

3. break和continue

我們可以使用這兩個語句控制循環。
大多時候,我們會和條件語句配合使用。

1. break

當出現break語句時,會跳出循環,不會再進行之后的循環。

String [] strs = {"張三","李四","王大錘","無名氏"}
for(String str:strs){
    if("王大錘".equals(str)){
        System.out.println("找到王大錘");
        break;
    }
    System.out.println("還沒找到王大錘");
}
/*
	當找到王大錘后,之后的循環已經沒有意義,使用break跳出循環。
*/

2. continue

當出現continue語句時,會中止當前循環,回到開頭進行下一個循環。

int [] nums = {66,70,88,96,56};
int sum = 0;
for(int num : nums){
    if(num >= 60){
        sum += 1;
        continue;
    }
    System.out.println("檢測到不合格分數");
}
System.out.println("有"+sum+"人及格");
/*
	如上面這樣寫,如果合格,就不會繼續下面的代碼,如果不合格,才會打印出提示。
*/

練習:

編寫一個顏值判斷系統

  1. 當顏值為0-60為丑比,當顏值為60-80為中等,當顏值80-90為清秀,當顏值90-100為盛世美顏,當顏值大於100為顏值爆表。
  2. 批量檢測顏值,將多個顏值存入int數組,循環檢測每個分數段有幾個人並輸出。同時,當檢測到壞數據(小於0時),打印出呀, 你丑到我了,並將直接中止本次循環不計入統計。當檢測到顏值爆表時,打印出糟糕,你美爆了我的小程序,並跳出循環。

拓展 switch語句

  • switch case 語句判斷一個變量與一系列值中某個值是否相等,每個值稱為一個分支。
  • 實際開發中,我很少用到這個語句,所以作為拓展放在這里。這個語句可以在條件很多時更有條理的寫出判斷。例如1-7對應周幾,分數段判斷等情況。
switch(expression){
    case value :
       //語句
       break; //可選
    case value :
       //語句
       break; //可選
    //你可以有任意數量的case語句
    default : //可選
       //語句
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM