Java中的邏輯控制語句詳解

順序結構

我們之前寫的大多代碼都是順序結構的,即按照代碼的順序一行一行的執行

代碼1
 System.out.println("you");
 System.out.println("and");
 System.out.println("me");
代碼2
 System.out.println("and");
 System.out.println("me");
 System.out.println("you");

上述代碼 1 運行結果:

you
and
me

代碼 2 運行結果:

and
me
you

分支結構

if 語句

基本語法格式:

if(佈爾表達式) {
    代碼1
  // 條件滿足時 執行
} else {
    代碼2
  // 條件不滿足時 執行
}

條件語句隻能是佈爾表達式

佈爾表達式的結果為 true,執行代碼1,否則執行代碼2

舉例:

如果 J 這次考到90分以上,獎勵一個大雞腿,否則獎勵一個大嘴巴子

int score = 95;
if(score >= 90) {
	System.out.println("獎勵一個大雞腿!");
}else {
	System.out.println("獎勵一個大嘴巴子!");
}

註意事項:

懸垂else:

 int x = 10;
 int y = 10;
 if (x == 10)
 	if (y == 10)
    	System.out.println("aaa");
 	else
    	System.out.println("bbb");
    	

運行結果:aaa

有多個 if 語句且沒有大括號時,else與最近的 if 匹配,故建議寫 if 語句時,加上大括號~

switch 語句

基本語法格式:

switch(表達式) {
 	case 常量值1:{
 		語句1;
 		break;
	}
 	case 常量值2:{
 		語句2;
 		break;
 	}
 	 ...
 	default:{
 	內容都不滿足時執行語句;
	 	break;
 	} 
}

執行流程:

  • 先計算表達式的值
  • 和 case 依次比較,一旦有響應的匹配就執行該項下的語句,直到遇到 break 時結束
  • 當表達式的值沒有與所列項匹配時,執行 default 後的語句

註意事項:

  • break 不能遺漏,否則會失去 “多分支選擇” 的效果
  • case 的常量值不能重復
  • 一般不推薦switch 嵌套使用

不能做switch參數的類型有哪些?

long,float,double,boolean

循環結構

while 循環

基本語法格式:

while(循環條件) {
	循環語句;
}

循環條件為 true, 則執行循環語句, 否則結束循環

while 循環輸入

Scanner scan = new Scanner(System.in);
	// Ctrl+C 直接中斷程序
   	// Ctrl+D 正常退出程序
    while(scan.hasNext()){
    	int year = scan.nextInt();
        if((year % 4==0 && year % 100!=0) || year % 400==0){
        	System.out.println("閏年!");
        }else{
            System.out.println("不是閏年!");
        }
   	}

Ctrl+C 直接中斷程序

Ctrl+D 正常退出程序

在這裡插入圖片描述

註意事項:

  • 一定記得步進,否則可能出現死循環
  • while 循環條件隻能是佈爾表達式

break

  • break 功能:讓循環提前結束
  • break隻能用於兩種情況,一個是switch,一個是循環

代碼示例:

求100-200中第一個既能被3整除也能被5整除的數:

int num = 100;
while(num<=200){
	if(num % 15==0){
    	System.out.println(num);
       	break;   //此處用break,因為break在while循環裡
     }
     num++;
}

執行結果: 105

continue

continue 功能:跳過這次循環,進入下次循環

若將上邊break 示例代碼 中的 break 換成 continue,則會循環打印 105

for 循環

基本語法格式:

for(表達式1; 佈爾表達式2; 表達式3){
	循環體;
}

執行順序:

第一趟循環:

  • 首先,執行表達式 1,且表達式 1 隻執行一次,即循環的初始化
  • 判斷表達式 2 是否為真若為真,
  • 則執行循環體
  • 執行表達式3

第二趟循環

  • 判斷表達式 2 是否為真若為真,
  • 則執行循環體
  • 執行表達式3

一直到表達式2為假,循環結束

代碼示例:

for(int i=1; i<=10;i++){
	System.out.println(i);
}

do while 循環

先執行循環語句,再判定循環條件,條件成立則繼續執行,否則循環結束

基本語法格式:

do{
  循環語句;
}while(循環體);

代碼示例:

打印數字 1 – 10

int num = 1;
	do {
    	System.out.println(num);
        num++;
    }while( num<=10 );

註意事項: do while 循環最後的分號一定不要忘記一般不推薦使用do while語句

總結

本篇文章就到這裡瞭,希望能給你帶來幫助,也希望您能夠多多關註WalkonNet的更多內容!

推薦閱讀: