break,continue,goto

  • break在任何循环语句的主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环中剩余的语句。(break语句也在switch选择语句中使用)

 package com.dlq.struct;
 ​
 public class BreakDemo {
     public static void main(String[] args) {
         int i=0;
         while (i<100){
             i++;
             System.out.println(i);
             if (i == 30) {
                 break;
            }
        }
         System.out.println("此时程序仍在运行!");
    }
 }
  • continue语句在循环语句中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。

 package com.dlq.struct;
 ​
 public class ContinueDemo {
     public static void main(String[] args) {
         int i=0;
         while (i<100){
             i++;
             if (i%10==0){
                 System.out.println();
                 continue;//每当i为10的倍数时,跳过下面的输出语句,即到此处就 终止本次循环
            }
             System.out.print(i + "\t");
 //           1   2 3 4 5 6 7 8 9
 //           11   12 13 14 15 16 17 18 19
 //           21   22 23 24 25 26 27 28 29
 //           31   32 33 34 35 36 37 38 39
 //           41   42 43 44 45 46 47 48 49
 //           51   52 53 54 55 56 57 58 59
 //           61   62 63 64 65 66 67 68 69
 //           71   72 73 74 75 76 77 78 79
 //           81   82 83 84 85 86 87 88 89
 //           91   92 93 94 95 96 97 98 99
        }
         System.out.println("=======================");
         int j = 0;
         while (j<100) {
             j++;
             if (j % 10 == 0) {
                 System.out.println();
                 break;//到此处就跳出循环体,可见break比continue更狠
            }
             System.out.print(j + "\t");
             //1     2 3 4 5 6 7 8 9
        }
    }
 }
  • 关于goto关键字

    • 关键字很早就在程序设计语言中出现。尽管goto仍是Java的一个保留字,但并未在语言中得到正式使用。Java没有goto。然而,在break和continue这两个关键字的身上,我们仍然能看出一些goto的影子——带标签的break和continue。

    • "标签"是指后面跟着一个冒号的标识符,例如:lable:

    • 对Java来说唯一用到标签的地方是在循环语句之间。而在循环之前设置标签的唯一理由是:我们希望在其中嵌套另一个循环,由于break和continue关键字通常只中断当前循环,但若随同标签使用,它们就会中断到存在标签的地方。

     package com.dlq.struct;
     ​
     public class LableDemo {
         public static void main(String[] args) {
             //打印101~150之间的质数
             //质数 是指 在 大于1的自然数 中,除了1和它本身以外不再有其他因数的自然数。
     ​
             //不建议使用
             outer:for (int i = 101; i < 150; i++) {
                 for (int j = 2; j < (i/2); j++) {//从1开始没有意义
                     //(i/2)意为一个数的一半乘以2才能得到这个数,超过一半则需要乘以一个分数才行,当作规律记住即可
                     if (i % j == 0) {//从2开始尝试能否被整除
                         continue outer;
                    }
                     //if后面不加{}时,就近原则,只控制第一句
                }
                 System.out.print(i+"\t");
            }
             //质数的输出   当作一个知识点记住就好
        }
     }

day16-break,continue,goto的更多相关文章

  1. java控制语句 if-else while do-while for return break continue goto switch default

    if for //: object/ForEachFloat.java package object; import java.util.Random; public class ForEachFlo ...

  2. break; continue; goto; return在循环中的应用

    1. break表示跳出循环,程序指向循环体后的第一条语句: ; ) { ) break; console.writeline("{0}",i++); } console.read ...

  3. c语言中break continue goto return和exit的区别 联系(筛选奇数和goto求和)

    break 一般你是用于循环和switch语句中,执行break,退出循环,如果是多层循环,那么退出的当前的循环. 如果循环结构中有switch语句,而switch语句中有break 那么不会直接退出 ...

  4. break continue goto

    break:跳出本层循环:continue:结束本次循环,并不跳出循环:goto:转移到指定位置,无条件转移:

  5. 跳转语句—break,continue,goto

    #define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<string.h>#include<stdlib.h&g ...

  6. Day7 break continue goto 以及打印三角形练习.

    break break在任何循环语句中的主体部分,均可以用break控制循环流程.break用于强行退出循环,不执行循环中剩余的语句. (break语句也在switch中使用) package com ...

  7. Java基础(2):Java中的四个跳转语句总结goto,break,continue,return

    跳转控制语句 Java中的goto是保留字,目前不能使用.虽然没有goto语句可以增强程序的安全性,但是也带来很多不便,比如说,我想在某个循环知道到某一步的时候就结束,现在就做不了这件事情.为了弥补这 ...

  8. Java中带标签的break,continue

    首先不带标签的break,continue 就不介绍了.大家平时用的最多的也就是这样的情况了. 首先Java中没有goto,但是可以利用带标签的break, continue来实现类似的跳转. 首先来 ...

  9. Java流程控制:增强for循环,break&continue,打印99乘法表

    增强for循环:java5引入了一种主要用于数组或集合的增强for循环for(声明语句:表达式){//代码句子} 声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配.其作用域限定在循环语 ...

  10. js中的break ,continue, return (转)

    面向对象编程语法中我们会碰到break ,continue, return这三个常用的关键字,那么关于这三个关键字的使用具体的操作是什么呢?我们在使用这三关键字的时候需要注意和需要理解的规则是什么呢? ...

随机推荐

  1. Win11、Win10局域网共享文件报错:共享文件夹出现,您的账号已锁定,无法访问

    解决方法,见: https://blog.csdn.net/dengww_/article/details/133887598 解决方法: https://blog.csdn.net/dengww_/ ...

  2. 【转载】 在PyTorch训练一个epoch时,模型不能接着训练,Dataloader卡死——在pytorch中尽量不要使用opencv而是使用PIL

    版权声明:本文为CSDN博主「时光碎了天」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明.原文链接:https://blog.csdn.net/u013289254/ ...

  3. 算法·理论:Manacher 笔记

    \(\text{Manacher}\) 来啦! \(\text{Manacher}\) 并没有什么前置知识,比 \(\text{KMP}\) 简单多了. 前置处理 \(\text{Manacher}\ ...

  4. mysql数据库中decimal数据类型比较大小

    在MySQL中,DECIMAL数据类型用于存储精确的数值,它非常适合用于需要高精度计算的场景,如金融应用.当我们需要在MySQL数据库中比较DECIMAL类型数据的大小时,可以使用标准的比较运算符,如 ...

  5. 【CMake系列】03-cmake 注释、常用指令 message、set、file、for_each、流程控制if

    本文给出了 cmake 中的 一些常用的 指令,可以快速了解,为后面的内容深入 打点基础. 本专栏的详细实践代码全部放在 github 上,欢迎 star !!! 如有问题,欢迎留言.或加群[3927 ...

  6. CF650D Zip-line

    CF650D Zip-line 大概题面: 给定一个长度为 \(n\) 的序列以及\(m\)个操作,每个操作形如" \(a_i,b_i\) ",表示将序列中第 \(a_i\) 个数 ...

  7. .NET+WPF 桌面快速启动工具 GeekDesk

    前言 大家在平时工作中,是不是经常为了找某个文件或者应用而在电脑桌面上来回翻找?桌面图标乱七八糟,每次找东西都像在大海捞针一样. 今天给大家介绍一个开源项目 GeekDesk,它能够让桌面焕然一新,工 ...

  8. 使用image-syncer镜像同步工具将阿里云镜像仓库镜像迁移至私有Harbor

    借助于阿里云开源的镜像同步工具image-syncer实现harbor及阿里云镜像仓库之间的镜像迁移 下载镜像同步工具 curl -fL "https://wiseo-generic.pkg ...

  9. 安装 Ubuntu / Windows 双系统

    最近给自己的老笔记本换了一块大硬盘,顺便装了 Windows 和 Ubuntu 两个操作系统.记录一下安装过程. 提示:Ubuntu 安装程序可以检测到磁盘已有的 Windows 安装.所以如果先安装 ...

  10. LaTeX 插入伪代码

    使用 algorithm 包和 algpseudocode 包 algorithm 包 用途: 提供一个浮动体环境来包含算法(类似于 figure 和 table 环境),使得算法可以自动编号并出现在 ...