Java代碼的三根頂梁柱:循環結構

順序結構

順序結構是指按照代碼一行一行的讀取。 例如:

System.out.println("abc");
System.out.println("def");
System.out.println("ghi");

結果為:

image-20210803165028913

如果調整代碼的書寫順序,例如:

System.out.println("ghi");
System.out.println("def");
System.out.println("abc");

那麼結果為:

image-20210803165146860

分支結構

if語句

語法1

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

語法2

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

語法3

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

代碼示例

int n = 5;//判斷n的奇偶性
if((n % 2) == 0) {
    System.out.println("偶數");
} else {
    System.out.println("奇數");
}

結果為:

image-20210803172816147

懸垂else

else隻與最近的未匹配的if進行匹配。 例如:

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

else與if(y == 10) 匹配,所以結果為:

image-20210804154550288

switch語句

基本語法

switch(整數|枚舉|字符|字符串){
     case 內容1 : {
         //內容滿足時執行語句;
         break;
     }
     case 內容2 : {
         //內容滿足時執行語句;
         break;
     }
     ...
     default:{
         //內容都不滿足時執行語句;
         break;
     } 
}

註意:long類型,float類型,double類型和boolean類型不能做switch的參數。

根據 switch 中值的不同, 會執行對應的 case 語句. 遇到 break 就會結束該 case 語句。如果 switch 中的值沒有匹配的 case, 就會執行 default 中的語句。

代碼示例

int day = 1;
switch(day) {
    case 1:
        System.out.println("星期一");
        break;
    case 2:
        System.out.println("星期二");
        break;
    case 3:
        System.out.println("星期三");
        break;
    case 4:
        System.out.println("星期四");
        break;
    case 5:
        System.out.println("星期五");
        break;
    case 6:
        System.out.println("星期六");
        break;
    case 7:
        System.out.println("星期天");
        break;
    default:
        System.out.println("輸入錯誤");
        break;
}

結果為:

image-20210804164233295

註意事項

如果上述沒有break:

int day = 1;
switch(day) {
    case 1:
        System.out.println("星期一");
    case 2:
        System.out.println("星期二");
    case 3:
        System.out.println("星期三");
    case 4:
        System.out.println("星期四");
    case 5:
        System.out.println("星期五");
    case 6:
        System.out.println("星期六");
    case 7:
        System.out.println("星期天");
    default:
        System.out.println("輸入錯誤");
        break;
}

那麼結果為:

image-20210804164441434

因此,如果沒有break,那麼case語句會依次向下執行,,從而失去瞭多分支的效果

循環結構

while循環

基本語法

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

循環條件必須為佈爾表達式。

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

代碼示例

int n = 1;//打印1——10的數字
while(n <= 10) {
    System.out.println(n);
    n++;
}

結果為:

image-20210804164958498

for循環

基本語法

for(表達式1;表達式2;表達式3){ 
    //循環體;
}
  • 表達式1:用於初始化循環變量
  • 表達式2:循環條件(佈爾表達式)
  • 表達式3:更新循環變量

代碼示例

int sum = 0;//計算1——100的和
for (int i = 0; i <= 100; i++) {
    sum += i;
}
System.out.println(sum);

結果為:

image-20210804165624731

do while循環

基本語法

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

先執行循環語句, 再判定循環條件。

代碼示例

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

結果為:

image-20210804165912019

break

break 的功能是讓循環提前結束。

例如:

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

結果為:

image-20210804171055205

continue

continue 的功能是跳過這次循環, 立即進入下次循環

例如:

int n = 1;//打印1——10的奇數
while(n <= 10) {
    if(n % 2 == 0) {
        n++;
        continue;
    }
    System.out.println(n);
    n++;
}

結果為:

image-20210804171417876

總結

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

推薦閱讀: