Câu lệnh Java continue

Câu lệnh Java continue: 281

Câu lệnh Java continue

Trong hướng dẫn này, bạn sẽ tìm hiểu về câu lệnh continue và câu lệnh continue được gắn nhãn trong Java với sự trợ giúp của các ví dụ.

Trong khi làm việc với vòng lặp, đôi khi bạn có thể muốn bỏ qua một số câu lệnh hoặc kết thúc vòng lặp. Trong những trường hợp như vậy, breakvà các continuecâu lệnh được sử dụng.

Để tìm hiểu về breakcâu lệnh, hãy truy cập Java break . Sau đây, chúng ta sẽ tìm hiểu về continuecâu lệnh.

Java tiếp tục

Các continuetuyên bố bỏ qua lần lặp hiện tại của một vòng lặp ( forwhiledo...while, vv).

Sau continuecâu lệnh, chương trình di chuyển đến cuối vòng lặp. Và, biểu thức kiểm tra được đánh giá (câu lệnh cập nhật được đánh giá trong trường hợp của vòng lặp for).

Đây là cú pháp của câu lệnh continue.

continue;

Lưu ý : Câu lệnh continue hầu như luôn được sử dụng trong các câu lệnh ra quyết định (Câu lệnh if … else ).

Câu lệnh tiếp tục hoạt động của Java

Làm việc của Java Câu lệnh tiếp tục

Ví dụ 1: Câu lệnh tiếp tục trong Java

class Main {
  public static void main(String[] args) {

    // for loop
    for (int i = 1; i <= 10; ++i) {

      // if value of i is between 4 and 9
      // continue is executed
      if (i > 4 && i < 9) {
        continue;
      }
      System.out.println(i);
    }
  }
}

Đầu ra :

1
2
3
4
9
10

Trong chương trình trên, chúng ta đang sử dụng forvòng lặp để in ra giá trị của i trong mỗi lần lặp. Để biết forvòng lặp hoạt động như thế nào , hãy truy cập Java for loop . Lưu ý tuyên bố,

if (i > 4 && i < 9) {
    continue;
}

Ở đây, continuecâu lệnh được thực hiện khi giá trị của i trở nên lớn hơn 4 và nhỏ hơn 9 .

Sau đó, nó sẽ bỏ qua câu lệnh in cho các giá trị đó. Do đó, đầu ra bỏ qua các giá trị 5 , 6 , 7 và 8 .

Ví dụ 2: Tính tổng của 5 số dương

import java.util.Scanner;

class Main {
  public static void main(String[] args) {

    Double number, sum = 0.0;
    // create an object of Scanner
    Scanner input = new Scanner(System.in);

    for (int i = 1; i < 6; ++i) {
      System.out.print("Enter number " + i + " : ");
      // takes input from the user
      number = input.nextDouble();

      // if number is negative
      // continue statement is executed
      if (number <= 0.0) {
        continue;
      }

      sum += number;
    }
    System.out.println("Sum = " + sum);
    input.close();
  }
}

Đầu ra :

Enter number 1: 2.2
Enter number 2: 5.6
Enter number 3: 0
Enter number 4: -2.4
Enter number 5: -3
Sum = 7.8

Trong ví dụ trên, chúng ta đã sử dụng vòng lặp for để in ra tổng của 5 số dương. Lưu ý dòng,

if (number < 0.0) {
    continue;
}

Ở đây, khi người dùng nhập một số âm, continuecâu lệnh sẽ được thực thi. Thao tác này bỏ qua lần lặp hiện tại của vòng lặp và đưa chương trình điều khiển đến biểu thức cập nhật của vòng lặp.

Lưu ý : Để lấy đầu vào từ người dùng, chúng tôi đã sử dụng Scannerđối tượng. Để tìm hiểu thêm, hãy truy cập Máy quét Java .

Java tiếp tục với Vòng lặp lồng nhau

Trong trường hợp các vòng lặp lồng nhau trong Java , continuecâu lệnh bỏ qua lần lặp hiện tại của vòng lặp trong cùng.Câu lệnh tiếp tục hoạt động của Java với các vòng lặp lồng nhau

Ví dụ 3: tiếp tục với Vòng lặp lồng nhau

class Main {
  public static void main(String[] args) {

    int i = 1, j = 1;

    // outer loop
    while (i <= 3) {

      System.out.println("Outer Loop: " + i);

      // inner loop
      while(j <= 3) {

        if(j == 2) {
          j++;
          continue;
        }

        System.out.println("Inner Loop: " + j);
        j++;
      }
      i++;
    }
  }
}

Đầu ra

Outer Loop: 1
Inner Loop: 1
Inner Loop: 3
Outer Loop: 2
Outer Loop: 3

Trong ví dụ trên, chúng ta đã sử dụng vòng lặp while lồng nhau . Lưu ý rằng chúng ta đã sử dụng continuecâu lệnh bên trong vòng lặp bên trong.

if(j == 2) {
  j++;
  continue:
}

Ở đây, khi giá trị của j là 2 , giá trị của j được tăng lên và continuecâu lệnh được thực hiện.

Điều này bỏ qua sự lặp lại của vòng lặp bên trong. Do đó, văn bản Vòng lặp bên trong: 2 bị bỏ qua khỏi đầu ra.

Tuyên bố tiếp tục được gắn nhãn

Cho đến bây giờ, chúng tôi đã sử dụng continuecâu lệnh không gắn nhãn . Tuy nhiên, có một dạng continuecâu lệnh khác trong Java được gọi là tiếp tục .

Nó bao gồm nhãn của vòng lặp cùng với continuetừ khóa. Ví dụ,

continue label;

Ở đây, continuecâu lệnh bỏ qua lần lặp hiện tại của vòng lặp được chỉ định bởi nhãn .Hoạt động của Java được gắn nhãn Câu lệnh tiếp tục

Chúng ta có thể thấy rằng bộ nhận dạng nhãn chỉ định vòng lặp bên ngoài. Lưu ý việc sử dụng tiếp tục bên trong vòng lặp bên trong.

Ở đây, continuecâu lệnh đang bỏ qua lần lặp hiện tại của câu lệnh có nhãn (tức là vòng lặp bên ngoài). Sau đó, điều khiển chương trình chuyển sang lần lặp tiếp theo của câu lệnh được gắn nhãn.

Ví dụ 4: Câu lệnh tiếp tục được gắn nhãn

class Main {
  public static void main(String[] args) {

    // outer loop is labeled as first
    first:
    for (int i = 1; i < 6; ++i) {

      // inner loop
      for (int j = 1; j < 5; ++j) {
        if (i == 3 || j == 2)

          // skips the current iteration of outer loop
          continue first;
        System.out.println("i = " + i + "; j = " + j);
      }
    }
  }
}

Đầu ra :

i = 1; j = 1
i = 2; j = 1
i = 4; j = 1
i = 5; j = 1

Trong ví dụ trên, labeled continuecâu lệnh được sử dụng để bỏ qua lần lặp hiện tại của vòng lặp có nhãn là đầu tiên .

if (i==3 || j==2)
    continue first;

Ở đây, chúng ta có thể thấy forvòng lặp ngoài cùng được gắn nhãn là đầu tiên ,

first:
for (int i = 1; i < 6; ++i) {..}

Do đó, quá trình lặp của forvòng lặp ngoài bị bỏ qua nếu giá trị của i là 3 hoặc giá trị của j là 2.

Lưu ý : Việc sử dụng nhãn continuethường không được khuyến khích vì nó làm cho mã của bạn khó hiểu. Nếu bạn đang ở trong tình huống phải sử dụng mã được gắn nhãn continue, hãy cấu trúc lại mã của bạn và cố gắng giải quyết nó theo một cách khác để làm cho mã dễ đọc hơn.









Gõ tìm kiếm nhanh...