📜  Java中的跳转语句

📅  最后修改于: 2022-05-13 01:55:50.024000             🧑  作者: Mango

Java中的跳转语句

跳转语句是将执行控制从程序中的一个点转移到另一点的控制语句。 Java编程语言中提供了两个 Jump 语句:

  1. 中断声明。
  2. 继续声明。

中断声明

1、使用Break语句退出循环:

在Java中,break 语句用于终止最近的循环语句或 switch 语句的执行。 break 语句广泛用于 switch 语句、 for循环、 while循环、 do-while循环。

句法:

break;

当在循环中找到break语句时,循环终止,控制到达循环后面的语句。这是一个例子:

Java
// Java program to illustrate the 
// break keyword in Java
import java.io.*;
  
class GFG {
    public static void main(String[] args)
    {
        int n = 10;
        for (int i = 0; i < n; i++) {
            if (i == 6)
                break;
            System.out.println(i);
        }
    }
}


Java
// Java program to illustrate the 
// break keyword as a Goto statement in Java
import java.io.*;
  
class GFG {
    public static void main(String[] args)
    {
        for (int i = 0; i < 3; i++) {
        one : { // label one
        two : { // label two
        three : { // label three
            System.out.println("i=" + i);
            if (i == 0)
                break one; // break to label one
            if (i == 1)
                break two; // break to label two
            if (i == 2)
                break three; // break to label three
        }
            System.out.println("after label three");
        }
            System.out.println("after label two");
        }
            System.out.println("after label one");
        }
    }
}


Java
// Java program to illustrate the 
// continue keyword in Java
import java.io.*;
  
class GFG {
    public static void main(String[] args)
    {
        for (int i = 0; i < 10; i++) {
            if (i == 6){
                  System.out.println();
                  // using continue keyword 
                  // to skip the current iteration
                continue;
            }
            System.out.println(i);
        }
    }
}


输出
0
1
2
3
4
5

如您所见,该代码旨在使用 for 循环打印 1 到 10 个数字,但它只打印 1 到 5 。一旦 i 等于 6,控制就终止循环。

在 switch 语句中,如果缺少break语句,则每个case标签都会执行到 switch 结束。

2. 使用 Break 作为 goto 的一种形式

Java没有 goto 语句,因为它产生了一种改变程序执行流程的非结构化方式。 Java说明了 break 语句的扩展形式。这种形式的中断适用于标签。标签是标识语句或代码块的标签的名称。

句法:

break label;

当这种形式的break执行时,控制跳出带标签的语句或块。

这是一个例子:

Java

// Java program to illustrate the 
// break keyword as a Goto statement in Java
import java.io.*;
  
class GFG {
    public static void main(String[] args)
    {
        for (int i = 0; i < 3; i++) {
        one : { // label one
        two : { // label two
        three : { // label three
            System.out.println("i=" + i);
            if (i == 0)
                break one; // break to label one
            if (i == 1)
                break two; // break to label two
            if (i == 2)
                break three; // break to label three
        }
            System.out.println("after label three");
        }
            System.out.println("after label two");
        }
            System.out.println("after label one");
        }
    }
}
输出
i=0
after label one
i=1
after label two
after label one
i=2
after label three
after label two
after label one

在上面的程序中,当 i=0 时,第一个 if 语句成功,并导致 break 标记一个,然后打印该语句。当 i=1 时,第二个 if 语句成功,并导致中断标记两个,然后打印语句。当 i=2 时,第三个 if 语句成功,并导致标签 3 的中断,然后打印所有三个语句。

继续声明

continue语句推动循环的下一次重复发生,在它自己和控制循环的条件表达式之间跳跃任何代码。

这是一个例子:

Java

// Java program to illustrate the 
// continue keyword in Java
import java.io.*;
  
class GFG {
    public static void main(String[] args)
    {
        for (int i = 0; i < 10; i++) {
            if (i == 6){
                  System.out.println();
                  // using continue keyword 
                  // to skip the current iteration
                continue;
            }
            System.out.println(i);
        }
    }
}
输出
0
1
2
3
4
5

7
8
9

在程序中,当 i 的值为 6 时,编译器遇到 continue 语句,则跳过 6。