break

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

  • (break语句也在switch中使用)

    package com.xiaoming.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(123);    //123 break 跳出循环但不终止程序继续运行到最后
      }
    }

continue

continue语句用在循环语句中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判断。

package com.xiaoming.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; //跳过终止 输出里没有10的整数倍了
          }
           System.out.println(i);
      }
  }
}

break与continue的区别

  • break在任何语句的主体部分,均可以用break控制循环流程。

  • break用于强行退出循环,不执行循环中剩余的语句。(break语句也在switch语句中使用)

  • continue语句用在循环语句体中,用于终止某次循环的过程,即跳出循环体中尚未执行的语句,接着进行下一次是否执行的判断。

关于goto关键字

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

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

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

package com.xiaoming.struct;

public class LeableDemo {
   public static void main(String[] args) {
       //打印101~150之间所有质数
       //质数是指在大于1的自然数中,除了1和它本身以外不存在其他因素的自然数。

       int count = 0;
       
       //不建议使用 标签的简单写法 outer:   continue outer;
       outer:for (int i = 101; i <= 150; i++) {
           for(int j = 2;j<i/2;j++){
               if(i % j ==  0){
                   continue outer;
              }
          }
           System.out.print(i+" "); // 101 103 107 109 113 127 131 137 139 149
           
      }
  }
}

练习 打印三角形

package com.xiaoming.struct;

public class TextDemo {
   public static void main(String[] args) {
       //打印三角形 5行 1 3 5 7 9

       for (int i = 1; i <= 5; i++) {
           for (int j = 5; j >= i; j--) {
               System.out.print(" ");
          }
           for (int j = 1; j <= i; j++) {
               System.out.print("*");
          }
           for (int j = 1; j < i; j++) {
               System.out.print("*");
          }

           System.out.println();
           
      }                                
                                       
  }


  }
 

如不理解可以通过Debug来观看每一步的值。

Day7 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. c语言中break continue goto return和exit的区别 联系(筛选奇数和goto求和)

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

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

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

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

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

  5. break continue goto

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

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

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

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

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

  8. JAVA之旅(二)——if,switch,for,while,do while,语句嵌套,流程控制break , continue ,函数,重载的示例总结

    JAVA之旅(二)--if,switch,for,while,do while,语句嵌套,流程控制break , continue ,函数,重载的示例总结 JAVA的思想真的很重要,所以要专心的学-- ...

  9. pass,break,continue的使用场景

    # ### 关键字的使用 pass / break / continue # pass 过 起到占位的作用 if 5 == 5: pass print(123) # break 只能应用在循环当中 用 ...

随机推荐

  1. Docker Buildx插件

    Docker Buildx插件 Overview Docker Buildx是一个CLI插件,它扩展了Docker命令,完全支持Moby BuildKit builder toolkit提供的功能.它 ...

  2. mybatis设置自动提交事务

    我们想要mybatis帮助我们自动提交事务其实很简单,只需要在SqlSessionFactory对象的openSession方法中设置参数为true就可以了,mybatis工具类如下: public ...

  3. SpringBoot2 参数管理实践,入参出参与校验

    一.参数管理 在编程系统中,为了能写出良好的代码,会根据是各种设计模式.原则.约束等去规范代码,从而提高代码的可读性.复用性.可修改,实际上个人觉得,如果写出的代码很好,即别人修改也无法破坏原作者的思 ...

  4. 密码学系列之:feistel cipher

    密码学系列之:feistel cipher 简介 feistel cipher也叫做Luby–Rackoff分组密码,是用来构建分组加密算法的对称结构.它是由德籍密码学家Horst Feistel在I ...

  5. selenium 鼠标事件操作

    1.操作鼠标事件的类:ActionChains  perform()  执行所有ActionChains中存储的行为 context_click()  右击 double_click()   双击 d ...

  6. ES6中的新数据类型——Symbol

    今天小编和大家来聊一聊es6中新增的一个原始数据类型Symbol.在es5中原始数据类型(基本数据类型)有以下六种:Undefind.Null.Bool. String.Number.Object.今 ...

  7. SpringBoot数据访问(二) SpringBoot整合JPA

    JPA简介 Spring Data JPA是Spring Data大家族的一部分,它可以轻松实现基于JPA的存储库.该模块用于增强支持基于JPA的数据访问层,它使我们可以更加容易地构建使用数据访问技术 ...

  8. 浅谈.Net Core中使用Autofac替换自带的DI容器

    为什么叫 浅谈 呢?就是字面上的意思,讲得比较浅,又不是不能用(这样是不对的)!!! Aufofac大家都不陌生了,说是.Net生态下最优秀的IOC框架那是一点都过分.用的人多了,使用教程也十分丰富, ...

  9. Huawei USG6530防火墙

    CF卡:(Compact Flash)最初是一种用于便携式电子设备的数据存储设备.作为一种存储设备,它革命性的使用了闪存 与sd卡的区别:SD卡的优点是安全.体积小巧,价格较之CF卡相对比较低,适合用 ...

  10. Spring Boot下的一种导出CSV文件的代码框架

    1.前言 ​ CSV,逗号分隔值(Comma-Separated Values),即为逗号分隔的文本文件.如果值中含有逗号.换行符.制表符(Tab).单引号及双引号,则需要用双引号括起来:如果值中包含 ...