1. Vòng lặp ngược
Java có một loại whilevòng lặp khác - do-whilevòng lặp. Nó rất giống với whilevòng lặp thông thường và cũng chỉ bao gồm hai phần: "điều kiện" và "phần thân vòng lặp". Thân vòng lặp được thực hiện lặp đi lặp lại miễn là điều kiện là true. Nói chung, một do-whilevòng lặp trông như thế này:
do
statement;
while (condition);
hoặc
do
{
block of statements
}
while (condition);
Đối với một whilevòng lặp, trình tự thực hiện là: điều kiện , thân vòng lặp , điều kiện , thân vòng lặp , điều kiện , thân vòng lặp , ...
Nhưng đối với do-whilevòng lặp thì hơi khác một chút: thân vòng lặp , điều kiện , thân vòng lặp , điều kiện , thân vòng lặp , ...
Trên thực tế, điểm khác biệt duy nhất giữa whilevòng lặp và do-whilevòng lặp là thân vòng lặp được thực hiện ít nhất một lần cho một do-whilevòng lặp.
2. Lợi ích của việc sử dụng do-whilevòng lặp
Về cơ bản, điểm khác biệt duy nhất giữa do-whilevòng lặp và whilevòng lặp là phần thân của do-whilevòng lặp được thực hiện ít nhất một lần.
Nói chung, một do-whilevòng lặp được sử dụng khi không cần kiểm tra điều kiện vòng lặp nếu phần thân vòng lặp chưa được thực thi. Ví dụ: nếu một số phép tính nhất định được thực hiện trong thân vòng lặp và sau đó được sử dụng trong điều kiện .
Ví dụ:
Chương trình đọc các dòng từ bàn phím cho đến khi từ exitđược nhập
| trong khi | làm trong khi |
|---|---|
|
|
Các câu lệnh breakvà continuetrong một do-whilevòng lặp hoạt động giống như trong một whilevòng lặp.
3. So sánh do-whilevòng lặp: Java vs Pascal
Một lần nữa, Pascal có một dạng tương tự của do-whilevòng lặp, nhưng nó được gọi là repeat-untilvòng lặp. Ngoài ra, nó hơi khác so với do-whilevòng lặp. Trong một repeat-untilvòng lặp, điều kiện cho biết khi nào nên thoát khỏi vòng lặp hơn là khi nào nên tiếp tục vòng lặp đó.
Ví dụ:
| pascal | Java |
|---|---|
|
|
So với Java, cách Pascal thể hiện điều này hết sức đẹp mắt. Chúng ta phải bắt đầu với các ví dụ từ Pascal, nếu không bạn sẽ cười đấy.
GO TO FULL VERSION