Vòng lặp for, while, do – while trong java

3457

VÒNG LẶP FOR

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

Vòng lặp for đơn giản giống như trong C/C++. Chúng ta có thể khởi tạo biến, kiểm tra điều kiện và tăng/giảm giá trị của biến.

Cú pháp:

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

Ví dụ minh hoạ:

public class ForExample {
    public static void main(String[] args) {
        for (int i = 1; i <= 10; i++) {
            System.out.println(i);
        }
    }
}

Kết quả:

1
2
3
4
5
6
7
8
9
10
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 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ụ minh hoạ:

public class ForEachExample {
    public static void main(String[] args) {
        int arr[] = { 12, 23, 44, 56, 78 };
        for (int i : arr) {
            System.out.println(i);
        }
    }
}

Kết quả:

12
23
44
56
78
Vòng lặp for gán nhãn

Chúng ta có để đặt tên cho mỗi vòng lặp for bằng cách gán nhãn trước vòng lặp for. Điều này rất hữu dụng khi chúng ta muốn thoát/tiếp tục(break/continues) chạy vòng lặp for.

Cú pháp:

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

Ví dụ minh hoạ:

public class LabeledForExample {
    public static void main(String[] args) {
        aa: for (int i = 1; i <= 3; i++) {
            bb: for (int j = 1; j <= 3; j++) {
                if (i == 2 && j == 2) {
                    break aa;
                }
                System.out.println(i + " " + j);
            }
        }
    }
}

Kết quả:

1 1
1 2
1 3
2 1

VÒNG LẶP WHILE

Vòng lặp while trong java được sử dụng để lặp một phần của chương trình một vài lần. Nếu số lần lặp không được xác định trước thì vòng lặp lặp while được khuyến khích sử dụng trong trường hợp này.

Cú pháp:

while(condition) {  
    // Khối lệnh được lặp lại cho đến khi condition = False
}

Ví dụ minh hoạ:

public class WhileExample1 {
 public static void main(String[] args) {
  int i = 1;
  while (i <= 10) {
   System.out.println(i);
   i++;
  }
 }
}

Kết quả:

1
2
3
4
5
6
7
8
9
10
Vòng lặp while vô tận

Nếu bạn để điều kiện lặp là True thì vòng lặp while 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.

Ví dụ về vòng lặp while vô tận trong java:

public class WhileExample2 {
 public static void main(String[] args) {
  while (true) {
   System.out.println("Vòng lặp while vô tận...");
  }
 }
}

Kết quả:

Vòng lặp while vô tận...
Vòng lặp while vô tận...
Vòng lặp while vô tận...
Vòng lặp while vô tận...
Vòng lặp while vô tận...
Ctrl + C

VÒNG LẶP DO..WHILE

Vòng lặp do-while trong java được sử dụng để lặp một phần của chương trình một vài lần. Tương tự như vòng lặp while, ngoại trừ do-while thực hiện lệnh ít nhất một lần ngay cả khi điều kiện là False.

Cú pháp:

do {  
    // Khối lệnh được thực thi
} while(condition);

Ví dụ sau tính tổng của 5 số tự nhiên đầu tiên dùng cấu trúc do-while.

public class DoWhileExample1 {
    public static void main(String[] args) {
        int a = 1, sum = 0;
        do {
            sum += a;
            a++;
        } while (a <= 5);
        System.out.println("Sum of 1 to 5  is " + sum);
    }
}

Biến a được khởi tạo với giá trị 1, sau đó nó vừa được dùng làm biến chạy (tăng lên 1 sau mỗi lần lặp) vừa được dùng để cộng dồn vào biến sum. Tại thời điểm kết thúc, chương trình sẽ in ra Sum of 1 to 5 is 15.

Kết quả:

Sum of 1 to 5 is 15
Vòng lặp do-while vô tận

Nếu bạn để điều kiện lặp là True thì vòng lặp do-while 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.

Ví dụ về vòng lặp do-while vô tận:

public class DoWhileExample2 {
    public static void main(String[] args) {
        do {
            System.out.println("Vòng lặp do-while vô tận...");
        } while (true);
    }
}

Kết quả:

Vòng lặp do-while vô tận...
Vòng lặp do-while vô tận...
Vòng lặp do-while vô tận...
Vòng lặp do-while vô tận...
Vòng lặp do-while vô tận...
Ctrl + C

LỆNH NGẮT BREAK

Từ khóa break trong java được sử dụng để stop thực thi lệnh trong vòng lặp hoặc trong mệnh đề switch tại điều kiện đã được chỉ định. Đối với vòng lặp bên trong vòng lặp khác, thì nó chỉ stop vòng lặp bên trong đó.

Sử dụng Break với vòng lặp for

Ví dụ sử dụng break với vòng lặp for:

public class BreakExample {
    public static void main(String[] args) {
        for (int i = 1; i <= 10; i++) {
            if (i == 5) {
                break;
            }
            System.out.println(i);
        }
    }
}

Kết quả:

1
2
3
4

Ví dụ sử dụng break với vòng lặp bên trong vòng lặp for khác:

public class BreakExample2 {
    public static void main(String[] args) {
        for (int i = 1; i <= 3; i++) {
            for (int j = 1; j <= 3; j++) {
                if (i == 2 && j == 2) {
                    break;
                }
                System.out.println(i + " " + j);
            }
        }
    }
}

Kết quả:

1 1
1 2
1 3
2 1
3 1
3 2
3 3
Sử dụng Break với mệnh đề switch-case

Mệnh đề switch-case trong java được sử dụng để thực thi 1 hoặc nhiều khối lệnh từ nhiều điều kiện.

Cú pháp:

switch (bieu_thuc) {    
case gia_tri_1:
    // Khối lệnh 1
    break;  //tùy chọn
case gia_tri_2:    
    // Khối lệnh 2
    break;  //tùy chọn
......    
case gia_tri_n:    
    // Khối lệnh n
    break;  //tùy chọn    
default:     
    // Khối lệnh này được thực thi 
    // nếu tất cả các điều kiện trên không thỏa mãn 
}

Ví dụ minh hoạ về switch – case:

public class SwitchExample {
    public static void main(String[] args) {
        int number = 20;
        switch (number) {
        case 10:
            System.out.println("10");
            break;
        case 20:
            System.out.println("20");
            break;
        case 30:
            System.out.println("30");
            break;
        default:
            System.out.println("Not in 10, 20 or 30");
        }
    }
}

Kết quả:

Kết quả:
20

LỆNH NHẢY BƯỚC CONTINUE

Từ khóa continue trong java được sử dụng để tiếp tục vòng lặp tại điều kiện đã được xác định, với điều kiện đó khối lệnh phía sau từ khóa continue sẽ không được thực thi. Đối với vòng lặp bên trong một vòng lặp khác, continue chỉ có tác dụng với vọng lặp bên trong đó.

Ví dụ sử dụng Continue trong java với vòng lặp for:

public class ContinueExample {
    public static void main(String[] args) {
        for (int i = 1; i <= 10; i++) {
            if (i == 5) {
                continue;
            }
            // Khi i == 5 thì không in i = 5 ra màn hình
            System.out.println(i);
        }
    }
}

Kết quả:

1
2
3
4
6
7
8
9
10

Ví dụ sử dụng Continue với vòng lặp bên trong vòng lặp for khác:

public class ContinueExample2 {
    public static void main(String[] args) {
        for (int i = 1; i <= 3; i++) {
            for (int j = 1; j <= 3; j++) {
                if (i == 2 && j == 2) {
                    continue;
                }
                // Không in trường hợp i=2 và j=2 ra màn hình
                System.out.println(i + " " + j);
            }
        }
    }
}

Kết quả:

1 1
1 2
1 3
2 1
2 3
3 1
3 2
3 3

VIDEO THỰC HÀNH WHILE, DO..WHILE & FOR

Add xin cảm ơn các bạn quan tâm, chúc thành công!

BÌNH LUẬN

Vui lòng nhập bình luận của bạn
Vui lòng nhập tên của bạn ở đây