Các cấu trúc điều khiển vòng lặp while và do while trong Java

Đây là bài 14/62 bài của series môn học Ngôn ngữ lập trình Java

Ý tưởng vòng lặp while và do while trong Java giống với C++. Các bạn có thể đọc lại bài Cú pháp và cách sử dụng vòng lặp while trong C++Sử dụng vòng lặp do while và sự khác nhau với while để nắm rõ các ý tưởng này. Bài này sẽ trình bày các ví dụ sử dụng vòng lặp while và do while trong Java.

1. Vòng lặp while trong Java

Vòng lặp while trong Java được sử dụng để lặp lại một khối lệnh nếu thỏa điều kiện nào đó. Cú pháp của vòng lặp while như sau:

while (<điều kiện lặp>)
{
	//code block
}

với <điều kiện lặp> thường là biểu thức với các toán tử quan hệ, kết quả trả về là true (0) hoặc false (0).

Nguyên lý hoạt động của vòng lặp while như sau:

Kiểm tra <điều kiện lặp>, nếu <điều kiện lặp> đúng (true) thì dòng lệnh trong while sẽ được thực thi.

Quá trình kiểm tra <điều kiện lặp> và thực thi dòng lệnh trong while sẽ chấm dứt cho đến khi <điều kiện lặpsai (false). Tức là, nếu bất cứ khi nào <điều kiện lặp> sai (false) thì vòng lặp while sẽ chấm dứt.

class Main {
    public static void main(String[] args) {
        // declare variables
        int i = 1, n = 5;
        // while loop from 1 to 5
        while(i <= n) {
          System.out.println(i);
          i++;
        }
    }
}
Kết quả
1
2
3
4
5

2. Vòng lặp do while trong Java

Vòng lặp do while cũng giống vòng lặp while nhưng khối lệnh trong vòng lặp thực hiện trước rồi mới kiểm tra điều kiện lặp sau. Cú pháp:

do {
   //code block
}while (<điều kiện lặp>);

với <điều kiện lặp> thường là biểu thức với các toán tử quan hệ, kết quả trả về là true (0) hoặc false (0).

Nguyên lý hoạt động của vòng lặp do while như sau:

Thực thi dòng lệnh trong do while trước. Sau đó, kiểm tra <điều kiện lặp>, nếu <điều kiện lặp> đúng (true) thì thực thi dòng lệnh trong do while lần nữa.

Quá trình kiểm tra <điều kiện lặp> và thực thi dòng lệnh trong do while sẽ chấm dứt cho đến khi <điều kiện lặpsai (false). Tức là, nếu bất cứ khi nào <điều kiện lặp> sai (false) thì vòng lặp do while sẽ chấm dứt.

class Main {
    public static void main(String[] args) {
        int i = 1, n = 5;
        // do...while loop from 1 to 5
        do {
          System.out.println(i);
          i++;
        } while(i <= n);
    }
}
Kết quả
1
2
3
4
5

3. Vòng lặp while vô hạn

Nếu <điều kiện lặp> của vòng lặp while và do while luôn luôn là true thì đó là vòng lặp vô hạn.

// infinite while loop
while(true){
    // body of loop
}
// infinite do...while loop
int count = 1;
do {
   // body of loop
} while(count == 1)

4. Trường hợp nào nên sử dụng for hoặc while?

Các vòng lặp while, do…while, và for là tương đương nhau trong nhiều trường hợp. Tuy nhiên:

Lệnh lặp for có thể sử dụng khi biết trước số lần lặp, ví dụ khi muốn in ra một thông báo 100 lần.

Lệnh lặp while có thể sử dụng khi không biết trước số lần lặp, ví dụ trong trường hợp đọc vào các số đến khi gặp số 0.

Lệnh lặp do…while có thể sử dụng thay lệnh while khi thân vòng lặp phải được thực hiện trước khi kiểm tra điều kiện tiếp tục lặp.

5/5 - (1 bình chọn)
Bài trước và bài sau trong môn học<< Các cấu trúc điều khiển vòng lặp for và for-each trong JavaĐịnh nghĩa và gọi phương thức (method) trong Java >>
Chia sẻ trên mạng xã hội:

Để lại một bình luận

Lưu ý:

1) Vui lòng bình luận bằng tiếng Việt có dấu.

2) Khuyến khích sử dụng tên thật và địa chỉ email chính xác.

3) Mọi bình luận trái quy định sẽ bị xóa bỏ.