Java loop vòng lặp

Theo w3school

Vòng lặp

Các vòng lặp có thể thực thi một khối mã miễn là đạt được một điều kiện cụ thể. Vòng lặp rất tiện dụng vì chúng tiết kiệm thời gian, giảm lỗi và giúp mã dễ đọc hơn.

While loop

Vòng lặp while sẽ liên tục lặp lại qua một khối mã miễn là điều kiện được chỉ định vẫn đúng.

while (condition) {
  // code block to be executed
}

Trong ví dụ dưới đây, mã trong vòng lặp sẽ chạy đi chạy lại, miễn là biến (i) vẫn còn nhỏ hơn 5:

int i = 0;
while (i < 5) {
  System.out.println(i);
  i++;
}

Lưu ý: Đừng quên tăng biến được sử dụng trong điều kiện, nếu không vòng lặp sẽ không bao giờ kết thúc!

Do While loop

Vòng lặp do/while là một biến thể của vòng lặp while. Vòng lặp này sẽ thực thi khối mã một lần, trước khi kiểm tra xem điều kiện có đúng không, sau đó nó sẽ lặp lại vòng lặp miễn là điều kiện lặp còn đúng.

do {
  // code block to be executed
}
while (condition);

Ví dụ dưới đây sử dụng một vòng lặp do while. Vòng lặp sẽ luôn được thực hiện ít nhất một lần, ngay cả khi điều kiện là sai, vì khối mã được thực thi trước khi điều kiện được kiểm tra:

int i = 0;
do { System.out.println(i); i++; } while (i < 5);

Đừng quên tăng biến được sử dụng trong điều kiện, nếu không vòng lặp sẽ không bao giờ kết thúc!

For loop

Khi bạn biết chính xác số lần bạn muốn lặp qua một khối mã, hãy sử dụng vòng lặp for thay vì vòng lặp while:

for (câu lệnh 1; câu lệnh 2; câu lệnh 3) {
  // code block to be executed
}

Câu lệnh 1 được thực hiện (một lần) trước khi khối mã thực thi.

Câu lệnh 2 xác định điều kiện để thực thi khối mã.

Câu lệnh 3 được thực hiện (mọi lúc) sau khi khối mã đã được thực thi.

Ví dụ dưới đây sẽ in các số từ 0 đến 4:

for (int i = 0; i < 5; i++) {
  System.out.println(i);
}

Giải thích ví dụ

Câu lệnh 1 đặt một biến trước khi vòng lặp bắt đầu (int i = 0).

Câu lệnh 2 xác định điều kiện để chạy vòng lặp (i phải nhỏ hơn 5). Nếu điều kiện đúng, vòng lặp sẽ bắt đầu lại, nếu sai, vòng lặp sẽ kết thúc.

Câu lệnh 3 tăng một giá trị (i ++) mỗi khi khối mã trong vòng lặp được thực thi.

Ví dụ tiếp theo sẽ chỉ in các giá trị chẵn từ 0 đến 10:

for (int i = 0; i <= 10; i = i + 2) {
  System.out.println(i);
}

For each loop

Ngoài ra còn có một vòng lặp ” for-each “, được sử dụng riêng để lặp qua các phần tử trong một mảng :

for (type variableName : arrayName) {
  // code block to be executed
}

Ví dụ sau xuất ra tất cả các phần tử trong mảng cars , sử dụng vòng lặp ” for each”:

String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
for (String i : cars) {
  System.out.println(i);
}

Lưu ý: Đừng lo lắng nếu bạn không hiểu ví dụ trên. Bạn sẽ tìm hiểu thêm về Mảng trong chương Mảng Java .

Break

Bạn đã thấy câu lệnh break được sử dụng trong chương trước của hướng dẫn này. Nó được sử dụng để “nhảy ra” một lệnh switch.

Câu lệnh break cũng có thể được sử dụng để nhảy ra khỏi vòng lặp .

Ví dụ này dừng vòng lặp khi giá trị bằng 4:

for (int i = 0; i < 10; i++) {
  if (i == 4) {
    break;
  }
  System.out.println(i);
}

Khi vòng lặp i tăng đến 4 thì vòng lặp sẽ dừng lại.

Continue

Câu lệnh continue bỏ qua một lần lặp (trong vòng lặp), nếu một điều kiện cụ thể xảy ra và tiếp tục với lần lặp tiếp theo trong vòng lặp.

Ví dụ này bỏ qua giá trị của 4:

for (int i = 0; i < 10; i++) {
  if (i == 4) {
    continue;
  }
  System.out.println(i);
}

Với ví dụ này bạn sẽ thấy giá trị i=4 sẽ không được in ra.

Break và Continue trong While Loop

Bạn cũng có thể sử dụng break và continue trong vòng lặp while:

int i = 0;
while (i < 10) {
  System.out.println(i);
  i++;
  if (i == 4) {
    break;
  }
}
int i = 0;
while (i < 10) {
  if (i == 4) {
    i++;
    continue;
  }
  System.out.println(i);
  i++;
}

Leave a Reply

Your email address will not be published. Required fields are marked *