Java while循環:條件滿足時重複執行,附實例

在編程中,我們經常需要重複執行某段代碼。比如打印1到10的數字、計算1到100的和等。Java提供了while循環來實現這種“重複執行”的需求。while循環的核心思想是:只要條件滿足,就一直執行循環體,直到條件不滿足爲止

一、while循環的基本語法

while循環的結構非常簡單,基本格式如下:

while (條件表達式) {
    // 循環體:當條件爲true時執行的代碼
}
  • 條件表達式:必須是一個布爾值(truefalse)。只有當條件爲true時,循環體纔會執行。
  • 循環體:被重複執行的代碼塊(如果只有一行代碼,大括號{}可以省略,但建議始終加上,避免錯誤)。

二、爲什麼需要循環?

假設要打印1到5這5個數字,不用循環的話,需要寫5行System.out.println()

System.out.println(1);
System.out.println(2);
System.out.println(3);
System.out.println(4);
System.out.println(5);

但如果要打印1到1000,手動寫1000行代碼顯然不現實。這時候while循環就能派上用場:只需要幾行代碼,就能自動重複執行。

三、實例1:打印1到5

需求:打印1到5這5個數字。
思路
1. 定義一個變量i,初始化爲1(表示當前要打印的數字);
2. 用while循環判斷:只要i小於等於5,就執行打印;
3. 每次打印後,i自增1(否則i永遠是1,條件永遠成立,導致死循環)。

代碼

public class WhileExample {
    public static void main(String[] args) {
        int i = 1; // 初始化變量i,從1開始
        while (i <= 5) { // 條件:i是否小於等於5?
            System.out.println(i); // 打印當前i的值
            i++; // i自增1(關鍵!否則條件永遠成立,變成死循環)
        }
    }
}

輸出

1
2
3
4
5

四、實例2:計算1到10的和

需求:計算1+2+3+…+10的總和。
思路
1. 定義變量sum初始化爲0(用於累加結果);
2. 定義變量i初始化爲1(從1開始累加);
3. 用while循環:只要i小於等於10,就執行sum += i(累加當前i的值到sum),然後i自增1。

代碼

public class SumExample {
    public static void main(String[] args) {
        int sum = 0; // 總和初始值爲0
        int i = 1; // 從1開始累加
        while (i <= 10) { // 條件:i是否小於等於10?
            sum = sum + i; // 等價於 sum += i
            i++; // i自增1,避免死循環
        }
        System.out.println("1到10的和是:" + sum); // 輸出結果
    }
}

輸出

1到10的和是55

五、注意事項:避免死循環!

while循環最常見的錯誤是死循環——循環體永遠執行,導致程序無法結束。出現死循環的原因通常是:
1. 條件表達式永遠爲true:比如while (i <= 5)寫成了while (i < 5),但i從未自增,導致條件永遠成立。
2. 循環體內沒有修改條件的變量:比如i++忘記寫,導致i始終是1,條件永遠成立。

示例:死循環(錯誤示範):

int i = 1;
while (i <= 5) {
    System.out.println(i);
    // 錯誤!忘記寫i++,i永遠是1,條件永遠成立
}

解決辦法:確保循環體中包含能讓條件表達式最終變爲false的邏輯(比如i++)。

六、補充:do-while循環(擴展)

如果需要至少執行一次循環體(比如用戶輸入密碼,需要先輸入再判斷是否正確),可以用do-while循環。它的特點是:先執行循環體,再判斷條件

語法

do {
    // 循環體(至少執行一次)
} while (條件表達式);

示例

int i = 1;
do {
    System.out.println(i);
    i++;
} while (i <= 5); // 先執行循環體,再判斷條件(即使條件初始爲false,也會執行一次)

輸出:1、2、3、4、5(和while循環結果相同,但邏輯不同)。

七、總結

  • while循環用於條件滿足時重複執行代碼,核心是“先判斷,再執行”。
  • 語法結構:while (條件) { 循環體 },必須確保循環體中修改條件,避免死循環。
  • 關鍵場景:打印序列、累加求和、重複任務(如用戶輸入驗證)等。

多練習簡單的循環實例,比如打印1到100、計算1到100的和,就能熟練掌握while循環的使用啦!

小夜