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. 【Java-GUI】06 绘图 Part2 位图处理

    绘画程序案例: 原视频排错找了半天,原来是变量名的问题 package cn.dzz; import java.awt.*; import java.awt.event.*; import java. ...

  2. nginx+tomcat部署均衡+虚拟IP配置

    一.配置java环境 更新数据源 sudo apt update 安装java sudo apt install openjdk-java-8-jdk 查看是否安装成功 java -version 二 ...

  3. anaconda运行install命令报错:Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:997)'

    运行命令: conda install mpi4py 报错: Retrieving notices: ...working... ERROR conda.notices.fetch:get_chann ...

  4. nature论文分享:Vector-based navigation using grid-like representations in artificial agents

    本文分享一篇nature的论文: Vector-based navigation using grid-like representations in artificial agents 有中文相关的 ...

  5. 从baselines库的common/vec_env/vec_normalize.py模块看方差的近似计算方法

    在baselines库的common/vec_env/vec_normalize.py中计算方差的调用方法为: RunningMeanStd 同时该计算函数的解释也一并给出了: https://en. ...

  6. WPF 使用MediaElement,但Source带https会抛出未引用对象实列

    原因和解决办法 如果恰好使用了MediaElement,在调用的时候,会出现空异常 var uri = new Uri("https://xxxx.mp4", UriKind.Re ...

  7. dpwwn-01靶机笔记

    dpwwn-01靶机笔记 概述 这是一台Vulnhub的靶机,主要在web方面,我们无法找到突破口时,应该怎样抉择mysql和ssh的爆破,以及弱口令的尝试. 我这里准备了连接,当然你也可去Vulnh ...

  8. CUDA常见编译器配置问题一览

    CUDA常见编译器配置问题一览 关注TechLead,复旦博士,分享云服务领域全维度开发技术.拥有10+年互联网服务架构.AI产品研发经验.团队管理经验,复旦机器人智能实验室成员,国家级大学生赛事评审 ...

  9. 一种很变态但有效的DDD建模沟通方式

    本文书接上回<这就是为什么你学不会DDD>,关注公众号(老肖想当外语大佬)获取信息: 最新文章更新: DDD框架源码(.NET.Java双平台): 加群畅聊,建模分析.技术实现交流: 视频 ...

  10. SimpleRAG:基于WPF与Semantic Kernel实现的一个简单的RAG应用

    SimpleRAG介绍 SimpleRAG是基于WPF与Semantic Kernel实现的一个简单的RAG应用,可用于学习与理解如何使用Semantic Kernel构建RAG应用. GitHub地 ...