Java基礎語法(4)-流程控制

title: Java基礎語法(4)-流程控制 html

blog: CSDNjava

data: Java學習路線及視頻spring

1.程序流程控制

  • 流程控制語句是用來控制程序中各語句執行順序的語句,能夠把語句組合成能完成必定功能的小邏輯模塊。
  • 三種基本流程結構
    • 順序結構---程序從上到下逐行地執行,中間沒有任何判斷和跳轉
    • 分支結構---根據條件,選擇性地執行某段代碼。有if…else和switch-case兩種分支語句
    • 循環結構---根據循環條件,重複性的執行某段代碼。有while、do…while、for、foreach三種循環語句。
Gnfkhd.png

2.順序結構

GnfB4J.png
  • Java中定義成員變量時採用合法的前向引用
//正確形式
public class Test{
	int num1 = 12;
	int num2 = num1 + 2;
}
//錯誤形式
public class Test{
	int num2 = num1 + 2;
        int num1 = 12;
}

3.分支語句1: if-else

if(條件表達式){
  	執行代碼塊;
}
GnhirV.png
if(條件表達式){
	執行代碼塊1;
}
else{
	執行代碼塊2;
}
Gnh0qf.png
if(條件表達式1){
	執行代碼塊1;
}
else if (條件表達式2){
	執行代碼塊2;
}
……
else{
	執行代碼塊n;
}
GnhqzR.png
  • 分支結構:if-else使用說明後端

    • 條件表達式必須是布爾表達式(關係表達式或邏輯表達式)、布爾變量
    • 語句塊只有一條執行語句時,一對{}能夠省略,但建議保留
    • if-else語句結構,根據須要能夠嵌套使用
    • 當if-else結構是「多選一」時,最後的else是可選的,根據須要能夠省略
    • 當多個條件是「互斥」關係時,條件判斷語句及執行語句間順序無所謂
    • 當多個條件是「包含」關係時,「小上大下 / 子上父下」
  • if-else語句應用舉例springboot

public class AgeTest{
	public static void main(String args[]){
		int age = 15; 
		if (age< 0) {
			System.out.println("不可能!");
} else if (age>250) {
			System.out.println("是個妖怪!");
} else {
			System.out.println(「人家芳齡 " + age +" ,馬馬乎乎啦!");
			}
		}
}

4.分支語句2: switch-case

switch(表達式){
case 常量1:
語句1;
	// break;
case 常量2:
	語句2;
	// break;
… …
case 常量N:
	語句N;
	// break;
default:
	語句;
	// break;
}
Gn5s3j.png
  • switch-case語句應用舉例
public class SwitchTest {
	public static void main(String args[]) {
		int i = 1; 
		switch (i) 
		{ case 0:
			System.out.println("zero");
			break; 
		case 1:
			System.out.println("one"); 
			break;
		default:
			System.out.println("default");
             break;
			}
		}
}
  • switch-case語句有關規則
    • switch(表達式)中表達式的值必須是下述幾種類型之一:byte,short,char,int,枚舉 (jdk 5.0),String (jdk 7.0);
    • case子句中的值必須是常量,不能是變量名或不肯定的表達式值;
    • 同一個switch語句,全部case子句中的常量值互不相同;
    • break語句用來在執行完一個case分支後使程序跳出switch語句塊;若是沒有break,程序會順序執行到switch結尾
    • default子句是可任選的。同時,位置也是靈活的。當沒有匹配的case時,執行default

5.switch和if語句的對比

  • 若是判斷的具體數值很少,並且符合byte、short 、char、int、String、枚舉等幾種類型。雖然兩個語句均可以使用,建議使用swtich語句。由於效率稍高。架構

  • 其餘狀況:對區間判斷,對結果爲boolean類型判斷,使用if,if的使用範圍更廣。也就是說,使用switch-case的,均可以改寫爲if-else。反之不成立。前後端分離

6.循環結構

  • 在某些條件知足的狀況下,反覆執行特定代碼的功能oop

    • for 循環
    • while 循環
    • do-while 循環
  • 循環語句的四個組成部分學習

  • 初始化部分(init_statement).net

    • 循環條件部分(test_exp)
  • 循環體部分(body_statement)

    • 迭代部分(alter_statement)

7.循環結構1:for循環

  • 語法格式
for (1.初始化部分;2.循環條件部分;3.迭代部分){
		4.循環體部分;
}
  • 執行過程
  • ①-②-③-④-②-③-④-②-③-④-.....-②
  • 說明
    • ②循環條件部分爲boolean類型表達式,當值爲false時,退出循環
    • ①初始化部分能夠聲明多個變量,但必須是同一個類型,用逗號分隔
    • ④能夠有多個變量更新,用逗號分隔
  • 演示
GnTnun.png
  • 應用舉例
public class ForLoop {
	public static void main(String args[]) 
		{ 
			int result = 0;
			for (int i = 1; i <= 100; i++) {
				result += i;
		}
			System.out.println("result=" + result);
	}
}

8.循環結構1:while循環

  • 語法格式
①初始化部分
while(②循環條件部分){
	③循環體部分;
	④迭代部分;
}
  • 執行過程

①-②-③-④-②-③-④-②-③-④-...-②

  • 說明
    • 注意不要忘記聲明④迭代部分。不然,循環將不能結束,變成死循環
    • for循環和while循環能夠相互轉換
  • 應用舉例
public class WhileLoop {
	public static void main(String args[]) {
		int result = 0;
		int i = 1;
		while (i <= 100) 
			{ result += i; 
			i++;
		}
		System.out.println("result=" + result);
	}
}

9.循環結構1:do-while循環

  • 語法格式
①初始化部分
do{
	③循環體部分;
	④迭代部分;
}while(②循環條件部分);
  • 執行過程

①-③-④-②-③-④-②-③-④-...-②

  • 說明
    • do-while循環至少執行一次循環體
  • 應用舉例
public class DoWhileLoop {
	public static void main(String args[]) 
    { 
        int result = 0, i = 1;
	do {
		result += i;
		i++;
	} while (i <= 100);
		System.out.println("result=" + result);
	}
}

10.結語

8qXr3n.png

2020-3-27: Java基礎語法(2)-變量

2020-3-27: Java基礎語法(3)-運算符

相關文章
相關標籤/搜索