Vòng lặp for 

Vòng lặp for

Vòng lặp for trong java được sử dụng để lặp một phần của chương trình nhiều lần. Nếu số lần lặp là cố định thì vong lặp for được khuyến khích sử dụng, còn nếu số lần lặp không cố định thì nên sử dụng vòng lặp while hoặc do while.

Các kiểu của vòng lặp for trong java:

  • Vòng lặp for đơn giản
  • Vòng lặp for cải tiến

Vòng lặp for đơn giản

Cú pháp:

for (khoi_tao_bien ; check_dieu_kien ; tang/giam_bien) { 
 // Khối lệnh được thực thi
}

Ví dụ

public class ForSample1 {
    public static void main(String[] args) {
 
        System.out.print("Vòng lặp for với biến tăng: ");
        for (int i = 1; i <= 5; i++) { System.out.print(i + " "); } // Hiển thị xuống dòng System.out.println(""); System.out.print("Vòng lặp for với biến giảm: "); for (int i = 5; i >= 1; i--) {
            System.out.print(i + " ");
        }
 
    }
}

Kết quả:

Vòng lặp forvới biến tăng: 12345Vòng lặp forvới biến giảm: 54321

Vòng lặp for cải tiến

Vòng lặp for cải tiến được sử dụng để lặp mảng (array) hoặc tập hợp (collection) trong java. Bạn có thể sử dụng nó dễ dàng, dễ hơn cả vòng lặp for đơn giản. Bởi vì bạn không cần phải tăng hay giảm giá trị của biến rồi check điều kiện, bạn chỉ cần sử dụng ký hiệu hai chấm “:

Cú pháp:

for(Type var : array) {  // Khối lệnh được thực thi}

Ví dụ:

public class ForSample2 {
    public static void main(String[] args) {
        int []arr = {
            1, 2, 3, 4, 5  
        };
        for (int i : arr) { 
            System.out.print(i + " "); 
        }
    }
}

Kết quả:

1 2 3 4 5

Vòng lặp for vô tận

Nếu bạn để điều kiện lặp là true hoặc không xác định thì vòng lặp for sẽ chạy đến vô tận… đến khi bạn stop chương trình đối với mỗi IDE (Eclipse, Netbean…) hoặc bấm Ctrl + C khi chạy bằng command hoặc đến khi hết bộ nhớ (StackOverflow).

Ví dụ:

public class ForSample3 {
    public static void main(String[] args) {
        // for (int i = 1; true; i++) {
        for (int i = 1; ; i++) {
            System.out.println(i + " ");
        }
    }
}

Kết quả:

1
2
3
4
5
6
...

Một điều khá đặc biệt là có thể sử dụng vòng lặp for vô tận, kết hợp với kiểm tra điều kiện kết thúc với lệnh break để thay thế cho vòng lặp while.

Ví dụ:

public class ForSample4{
    public static void main(String[] args) {
        int i;
        final int COUNT = 5;
        System.out.print("Using For:   ");
        i = 1;
        for (;;) {
            System.out.print(i + " ");
            if (i == COUNT) {
                break;
            }
            i++;
        }
 
        System.out.println();
        System.out.print("Using While: ");
        i = 1;
        while (i <= COUNT) {
            System.out.print(i + " ");
            i++;
        }
    }
}

Kết quả:

Using For:   1 2 3 4 5
Using While: 1 2 3 4 5