java系列:Break和continue

86 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第15天,点击查看活动详情

Break

java.lang.math

math类下的random()方法

返回带正号的double值,该值大于等于0.0且小于1.0

基本介绍:break语句用于终止某个语句块的执行,一般使用在switch或者循环中

基本语法:

{
    ……
    break;
    ……
}

注意事项和细节说明

  1. break语句出现在多层嵌套的语句块时,可以通过标签指明要终止的是哪一层语句块BreakDetail.java
  2. 标签的基本使用
label1:{
label1: {
label3      {
  1. break语句可以指定退出哪层
  2. label1是标签 ,名字由程序员指定
  3. break后指定到哪个label就退出到哪里
  4. 在实际开发中,尽量不要使用标签
  5. 如果没有指定的break,默认退出最近的循环体

break练习

BreakExercise.java

import java.util.Scanner;
public class BreakExercise {
    public static void main(String[] args) {
​
        Scanner scanner = new Scanner(System.in);
​
        int sum = 0;
​
        for (int i = 1; i <= 100; i++){
            sum += i;
            if (sum > 20){
                System.out.println(i);
                System.out.println(sum);
                break;
            }
        }
    }
}
  1. 1--100以内的数求和,求出当和第一次大于20的当前数(for+break)

BreakExercise02.java

import java.util.Scanner;
public class BreakExercise02 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
​
        int chance = 3;
        String username = "丁真";
        String password = "666";
        for (int i = 0; i < 3 ;i++){
            System.out.println("请输入用户名:");
            String name = scanner.next();
            System.out.println("请输入密码:");
            String passwd = scanner.next();
            if (username.equals(name) & password.equals(passwd)){
                System.out.println("登陆成功");
                break;
            }
            else{
                chance--;
                System.out.println("您输入的用户名或密码错误,您还有" + chance + "次机会");
            }
​
        }
    }
}
  1. 实现登录验证,有三次机会,如果用户名为丁真,密码为666提示登陆成功,否则提示还有几次机会,请使用(for+break)完成

java.lang.String

String类下的equals()方法

将此字符串和指定的对象比较

continue

基本介绍:continue语句用于结束本次循环,继续执行下一次循环

continue语句出现多层嵌套的循环语句体中时,可以通过标签指明要跳过的是哪一层循环,这个和前面的标签的使用使用规则是一样的

基本语法

{
    ……
    continue
    ……
}

以while使用continue为例,画出示意图

跳转控制语句continue

细节案例分析和说明:ContinueDetail.java

public class ContinueDetail {
    public static void main(String[] args) {
        label1:
        for (int j = 0; j < 4; j++){
            label2:
            for (int i = 0; i < 10; i++){
                if (i == 2){
                    continue label1;
                }
                System.out.println(i);
            }
​
        }
    }
}