Java 菜鳥教程

Java 流程控制

Java 數(shù)組

Java 面向?qū)ο?I)

Java 面向?qū)ο?II)

Java 面向?qū)ο?III)

Java 異常處理

Java 列表(List)

Java Queue(隊(duì)列)

Java Map集合

Java Set集合

Java 輸入輸出(I/O)

Java Reader/Writer

Java 其他主題

Java break語句

在本教程中,您將借助示例來學(xué)習(xí)break語句,該語句在Java中被標(biāo)記為break語句。

在使用循環(huán)時(shí),有時(shí)希望跳過循環(huán)內(nèi)的某些語句或立即終止循環(huán)而不檢查測(cè)試表達(dá)式。

在這種情況下,將使用break和continue語句。您將在下一章中了解continue語句

Java中的break語句立即終止循環(huán),程序的控制權(quán)移至循環(huán)后的下一條語句。

break語句它幾乎總是與決策語句(Java if ... else語句)一起使用。

這是Java中break語句的語法:

break;

break語句如何工作?

break語句在Java編程中如何工作?
Java break語句的工作流程圖

示例1:Java break語句

class Test {
    public static void main(String[] args) {
      
        // for 循環(huán)
        for (int i = 1; i <= 10; ++i) {

            //如果i的值為5,則循環(huán)終止 
            if (i == 5) {
                break;
            }      
            System.out.println(i);
        }   
    }
}

輸出

1
2
3
4

在上面的程序中,我們使用for循環(huán)來打印每次迭代中i的值。要了解for循環(huán)的工作原理,請(qǐng)?jiān)L問Java for 循環(huán)。在這里,請(qǐng)注意以下語句:

if (i == 5) {
    break;
}

這意味著當(dāng)?shù)闹礽等于5時(shí),循環(huán)終止。因此,我們得到是小于5的輸出值。

示例2:Java break語句

下面的程序計(jì)算用戶輸入的數(shù)字總和,直到用戶輸入負(fù)數(shù)。

為了接受用戶的輸入,我們使用了該Scanner對(duì)象。要了解更多信息Scanner,請(qǐng)?jiān)L問Java Scanner。

import java.util.Scanner;

class UserInputSum {
    public static void main(String[] args) {
      
        Double number, sum = 0.0;

        //創(chuàng)建Scanner對(duì)象
        Scanner input = new Scanner(System.in);
      
        while (true) {
            System.out.print("輸入一個(gè)數(shù)字: ");

            //接受用戶的兩次輸入
            number = input.nextDouble();
         
            //如果number為負(fù)數(shù),循環(huán)終止
            if (number < 0.0) {
                break;
            }
         
           sum += number;
        }
        System.out.println("Sum = " + sum);
    }
}

輸出

輸入一個(gè)數(shù)字: 3.2
輸入一個(gè)數(shù)字: 5
輸入一個(gè)數(shù)字: 2.3
輸入一個(gè)數(shù)字: 0
輸入一個(gè)數(shù)字: -4.5
Sum = 10.5

在上述程序中,while循環(huán)的測(cè)試表達(dá)式始終為true。在這里,請(qǐng)注意這行,

if (number < 0.0) {
    break;
}

這意味著當(dāng)用戶輸入負(fù)數(shù)時(shí),while循環(huán)終止。

Java中斷和嵌套循環(huán)

對(duì)于嵌套循環(huán),break語句終止最里面的循環(huán)。

在嵌套循環(huán)的情況下,break語句終止最里面的while循環(huán)。
使用嵌套循環(huán)的break語句的工作流程圖

在這里,break語句終止最內(nèi)層的while循環(huán),并且控制跳至外層循環(huán)。

帶標(biāo)記的break語句

到目前為止,我們已經(jīng)使用了未標(biāo)記的break語句。它終止最里面的循環(huán)和switch語句。但是,Java中還有另一種break語句形式,稱為帶標(biāo)簽的break。

我們也可以使用標(biāo)記的break語句終止最外面的循環(huán)。

帶標(biāo)簽的break語句用于中斷最外面的循環(huán)。
帶標(biāo)簽的break語句在Java中的工作流程圖

如上圖所示,我們使用label標(biāo)識(shí)符來指定外部循環(huán)?,F(xiàn)在,請(qǐng)注意如何使用該break語句(break label;)。

在這里,該break語句終止了帶標(biāo)簽的語句(即外循環(huán))。然后,程序跳到指定的標(biāo)記語句之后的語句。

這是另一個(gè)實(shí)例:

while (testExpression) {
   // 代碼
   second:
   while (testExpression) {
      // 代碼
      while(testExpression) {
         // 代碼
         break second;
      }
   }
   //控制跳到這里
}

在上面的示例中,當(dāng)執(zhí)行語句 break second;時(shí); 執(zhí)行完后,標(biāo)記為Second的while循環(huán)終止。 并且,程序的控制權(quán)在第二個(gè)while循環(huán)之后移至該語句。

示例3:帶標(biāo)簽的break語句

class LabeledBreak {
    public static void main(String[] args) {
   
        //for循環(huán)標(biāo)記為first 
        first:
        for( int i = 1; i < 5; i++) {

            //for循環(huán)標(biāo)記為second
            second:
            for(int j = 1; j < 3; j ++ ) {
                System.out.println("i = " + i + "; j = " +j);
             
                //break語句終止第一個(gè)for循環(huán)
                if ( i == 2)
                    break first;
            }
        }
    }
}

輸出

i = 1; j = 1
i = 1; j = 2
i = 2; j = 1

在上面的示例中,labeled break語句用于終止標(biāo)記為first的循環(huán)。那是,

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

在這里,如果我們更改break first;為 break second;程序的行為將不同。在這種情況下,標(biāo)記為second的for循環(huán)將被終止。例如,

class LabeledBreak {
    public static void main(String[] args) {
      
        //for循環(huán)標(biāo)記為first
        first:
        for( int i = 1; i < 5; i++) {

            //for循環(huán)標(biāo)記為second
            second:
            for(int j = 1; j < 3; j ++ ) {

                System.out.println("i = " + i + "; j = " +j);
       
                //break語句終止標(biāo)記為second的循環(huán)  
                if ( i == 2)
                    break second;
            }
        }
    }
}

輸出

i = 1; j = 1
i = 1; j = 2
i = 2; j = 1
i = 3; j = 1
i = 3; j = 2
i = 4; j = 1
i = 4; j = 2

注意:break語句還用于終止switch語句中的case。要了解更多信息,請(qǐng)?jiān)L問Java switch語句

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清