Java 若要讓一段程式反覆地執行,可使用while迴圈。
while迴圈語法:
while ( /* 條件判斷式 */ ) {
// 迴圈執行區塊
}
while迴圈使用關鍵字while
開頭;
小括弧(...)
內為條件判斷式,結果為boolean
,true
繼續迴圈,false
結束迴圈。每次迴圈開始執行;
大括弧{...}
內為迴圈執行區塊。
下面是常見的用法,例如要跑10次迴圈,計數從0開始到9結束。
- 迴圈開始前宣告一計數用的變數
count = 0
。 - 條件判斷
count < 0
是否為真。 - 迴圈執行最後執行
count++
遞增1。
int count = 0; // 宣告計數變數
while (count < 10) { // 判斷條件是否為真
System.out.println(count);
count++; // 遞增計數變數的值
}
條件式永遠為真(true
)則形成一個無窮迴圈(infinite loop),程式永遠不會結束。應該避免這種情況。
while (true) {
// 無窮迴圈 infinite loop
}
while迴圈通常用來處理未知長度的內容,例如讀取檔案。
try (
FileReader fr = new FileReader(new File("D:\\lyric.txt")); // 讀取的檔案lyric.txt,內容長度未知
BufferedReader br = new BufferedReader(fr); // 以緩衝讀取字元
) {
StringBuilder sb = new StringBuilder();
String line;
while ((line = br.readLine()) != null) { // 讀取新的一行內容若不為空則繼續迴圈
sb.append(line).append("\n"); // 將新的一行內容加到StringBuilder的最後
}
System.out.println(sb.toString()); // 印出StringBuilder的內容
} catch (IOException e) {
e.printStackTrace();
}
除了while迴圈還有for迴圈,通常用來處理已知長度的陣列或集合。
沒有留言:
張貼留言