循環語句的作用是使某一段程序根據需要重複執行多次。循環語句由循環體的循環條件和兩部分構成。
循環體是要重複執行的語句,循環條件決定循環的開始,重複執行以及結束循環。
(2)循環體部分,重複執行的一段程序,可以是一條語句。也可以是一塊語句。
(3)迭代部分,在當前循環結束,下一次循環開始前執行的語句。常用形式為一個計數器值在增減。
(4)終止部分,一般為布爾表達式,每一次循環都要對該表達式求值,以檢查是否滿足循環終止條件。
while 語句的執行是 : 先判斷條件,根據條件再決定是否繼續執行循環體。
public class WhileExample { public static void main(String[] args) { int i = 1; int sum = 0; while (i <= 100) { sum = sum + i; i++; } System.out.println("1+2+...+100=" + sum); }}
運行結果 :
1+2+...+100=5050do - while 語句的執行是 : do 循環語句首先執行給定的語句循環體,然後在計算 boolean 表達式 。
public class DoWhileExample { public static void main(String[] args) { int i = 1; int sum = 0; do { sum = sum + i; i++; } while (i <= 100); System.out.println("1+2+...+100=" + sum); }}
運行結果 :
1+2+...+100=5050for 循環語句在幾種循環語句中的格式與用法最靈活。
public class ForExample { public static void main(String[] args) { int sum = 0; for (int i = 0; i <= 100; i++) { sum += i; } System.out.println("1+2+...+100=" + sum); }}
運行結果 :
1+2+...+100=5050增強 for 循環(也稱 for each 循環)專門用來遍歷數組和集合。在遍歷的過程中,不能對集合中的元素進行增刪操作。
import java.util.LinkedList;
public class ForEachExample { public static void main(String[] args) { LinkedList<Integer> mLinkedList = new LinkedList<Integer>(); mLinkedList.add(65); mLinkedList.add(75); mLinkedList.add(85); mLinkedList.add(95); for (Integer integer : mLinkedList) { System.out.println(integer); } }}
運行結果 :
65758595break 的作用是跳出當前循環塊(for、while、do while)或程序塊(switch)。在循環塊中的作用是跳出當前正在循環的循環體。在程序塊中的作用是中斷和下一個 case 條件的比較。
import java.util.Scanner;
public class BreakExample { public static void main(String[] args) { System.out.println("請輸入需要判斷的數"); Scanner reders = new Scanner(System.in); int n = reders.nextInt(); boolean flag = true; if (n == 2 || n == 3) { flag = true; } for (int i = 2; i < n; i++) { if (n % i == 0) { flag = false; break; } } if (flag) { System.out.println(n + "是質數"); } else { System.out.println(n + "不是質數");
} }}
運行結果 :
請輸入需要判斷的數55是質數continue 用於結束循環體中其後語句的執行,並跳回循環程序塊的開頭執行下一次循環,而不是立刻循環體。
public class ContinueExample { public static void main(String[] args) { int sum = 0; for (int i = 1; i <= 100; i++) { if (i % 2 == 1) { continue; } sum += i; } System.out.println("2+4+...+100=" + sum); }}
運行結果 :
2+4+...+100=2550