Skip to main content

Java While loop - Vòng lặp While trong Java

Vòng lặp while được sử dụng khi vòng lặp được thực hiện mãi cho đến khi điều kiện thực thi vẫn là True. Số lượng vòng lặp không đựơc xác định trước song nó sẽ phụ thuộc vào từng điều kiện.

while_loop_flow_chart_diagram.png

Cú pháp:

while(condition)
{
	action statement;
	:
	:
}

Trong đó:

  • condition: Biểu thức Boolean, nó trả về giá trị True hoặc False. Vòng lặp sẽ tiếp tục cho đến khi nào giá trị True được trả về.
  • action statement: Các câu lệnh được thực hiện nếu condition nhận giá trị True

Ví dụ 1:

Đoạn chương trình sau tính giai thừa của số 5.Giai thừa được tính như tích 5*4*3*2*1

class WhileDemo {
    public static void main(String args[]) {
        int a = 5, fact = 1;
        while (a. >= 1) {
            fact *= a;
            a--;
        }
        System.out.println("The Factorial of 5 is " + fact);
    }
}

Ở ví dụ trên, vòng lặp được thực thi cho đến khi điều kiện a>=1 là True. Biến a được khai báo bên ngoài vòng lặp và được gán giá trị là 5. Cuối mỗi vòng lặp, giá tri của a giảm đi 1. Sau năm vòng giá trị của a bằng 0. Điều kiện trả về giá trị False và vòng lặp kết thúc. Kết quả sẽ được hiển thị The factorial of 5 is 120

Ví dụ 2:

Đoạn chương trình sau hiển thi tổng của 5 số lẻ đầu tiên

class ForDemo {
    public static void main(String args[]) {
        int i = 1, sum = 0;
        for (i = 1; i <= 10; i += 2)
            sum += i;
        System.out.println("sum of first five old numbers is " + sum);
    }
}

Ở ví dụ trên, i và sum là hai biến được gán các giá trị đầu là 1 và 0 tương ứng. Điều kiện được kiểm tra và khi nó còn nhận giá trị True, câu lệnh tác động trong vòng lặp được thực hiện. Tiếp theo giá trị của i được tăng lên 2 để tạo ra số lẻ tiếp theo. Một lần nữa, điều kiện lại được kiểm tra và câu lệnh tác động lại được thực hiện. Sau năm vòng, i tăng lên 11, điều kiện trả về giá trị False và vòng lặp kết thúc. Thông báo: Sum of first five odd numbers is 25 được hiển thị.