首页 > 编程语言 >秦疆的Java课程笔记:43 流程控制 break、continue、goto

秦疆的Java课程笔记:43 流程控制 break、continue、goto

时间:2023-11-28 15:48:04浏览次数:38  
标签:语句 Java goto 43 break continue public 循环

  • break:在任何循环语句的主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环中剩余的语句。(break也在switch语句中使用)
public class BreakDemo {  
    public static void main(String[] args) {  
        int i = 0;  
        while(i<100){  
            i++;  
            System.out.println(i);  
            if (i==3){  
                break;  
            }  
        }  
        System.out.println("劳资蜀道山");  
    }  
}
====效果如下====
1
2
3
劳资蜀道山   //break只是终止循环,循环后的语句会继续执行。
  • continue:用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判断。
public class ContinueDemo {  
    public static void main(String[] args) {  
        int i = 0;  
        while (i<30){  
            i++;  
            if (i%10==0){  
                System.out.println();  
                continue;  
            }  
            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
//跳过了每个10的倍数,但继续循环,直到终止。
  • 关于goto关键字:

    • goto关键字很早就在程序设计语言中出现。尽管goto仍是java的一个保留字,但并未在语言中得到正式使用;java没有goto。然而,在break和continue这两个关键字上,任然能看出一些goto的影子——带标签的break和continue。
    • 标签是指后面跟一个冒号:的标识符,比如:label:
    • 对Java来说,唯一用到标签的地方是在循环语句之前。而在循环之前设置标签的唯一理由是:我们希望在其中嵌套另一个循环,由于break和continue关键字通常只中断当前循环,若随同标签使用,它们就会中断到存在标签的地方。
  • 打印101-150之间所有的质数

public class LabelDemo {  
    public static void main(String[] args) {  
        //质数的定义是只能被自己和1整除的自然数  
        outer:for (int i =101;i<150;i++) {  
            for (int j = 2;j<i/2;j++){
            //j从2开始排除了1,<i/2是因为大于i一半的数不可能整除i  
                if (i%j==0){
                //模=0,说明这个数可以被1和自身外的自然数整除,不是质数  
                    continue outer;
                    //跳出循,打印一个质数,并转到outer:继续循环,直到终止  
                }  
            }  
            System.out.print(i+" ");  
        }  
    }  
}
====效果如下====
101 103 107 109 113 127 131 137 139 149 
  • 秦疆老师不建议使用这种语句。

标签:语句,Java,goto,43,break,continue,public,循环
From: https://www.cnblogs.com/Acolyte/p/17862089.html

相关文章

  • 秦疆的Java课程笔记:44 流程控制 打印三角形及Debug
    作业:打印5行三角形这是我写的:publicclassTestDemo1{publicstaticvoidmain(String[]args){intline=5;//定义总行数linefor(inti=1;i<=line;i++){//i是循环输出每一行for(intj=1;j<=line-i;j++){//j......
  • Java核心知识体系7:线程安全性讨论
    Java核心知识体系1:泛型机制详解Java核心知识体系2:注解机制详解Java核心知识体系3:异常机制详解Java核心知识体系4:AOP原理和切面应用Java核心知识体系5:反射机制详解Java核心知识体系6:集合框架详解1为什么需要多线程我们都知道,CPU、内存、I/O设备的速度是有极大差异的,为了合......
  • [洛谷P5966] [BZOJ4344] [POI2016] Hydrorozgrywka
    题解建出原图的圆方树。由于原图无重边,不妨把桥看作二元环建树,这样圆点只与方点直接相连。圆方树定某一圆点为根后,若点\(u\)是圆点,定义点\(u\)的子仙人掌为点\(u\)子树中的圆点在原图的导出子图,定义该子仙人掌的根为点\(u\);若点\(u\)是方点,定义点\(u\)的子仙人掌为点......
  • Java面试小练(四)
    请描述GET请求方式与POST请求方式的区别?post比get更安全,发送数据更大get和post都是http和服务器交互的方式get会将请求的数据放在url中,http协议头,中间用?来链接,用&来相连数据,中文会进行url加密post会将数据放在http的包体内发送get请求数据放在url,理论上没有大小限制,但是浏......
  • Java语言基础知识全总结
    一.Java的优点1.      跨平台性。一次编译,到处运行。Java编译器会将Java代码编译成能在JVM上直接运行的字节码文件,C++会将源代码编译成可执行的二进制代码文件,所以C++执行速度快2.      纯面向对象。Java所有的代码都必须在类中书写。C++兼具面向对象和面向过程的特......
  • Java开发者的Python快速进修指南:实战之简易跳表
    前言之前我已经将Python的基本语法与Java进行了比较,相信大家对Python也有了一定的了解。我不会选择去写一些无用的业务逻辑来加强对Python的理解。相反,我更喜欢通过编写一些数据结构和算法来加深自己对Python编程的理解。学习任何语言都一样。通过编写数据结构和算法,不仅可以加......
  • 加固数据安全:Java助力保护Excel文件,让数据无懈可击
    前言Excel文件保护是常用的一种功能,文件保护主要有三种:添加密码,如果没有密码不允许打开文件。添加密码,如果没有密码,不能修改文件,但可以打开,只读以及另存文件。只读推荐,通常推荐打开Excel文件的用户使用只读模式打开,这种方式仅是一种提示,并非强行保护文件。给Excel添加保护情况1:下面......
  • Java零基础入门-输入
    前言Java作为一门大型的编程语言,拥有广泛的应用领域和众多的开发人员。对于初学者来说,掌握Java的重点知识点非常重要,其中输入是Java中基础的操作之一。本文将介绍Java中输入的相关知识点,帮助初学者快速掌握Java。摘要本文将介绍Java中输入的相关知识点,包括输入的方法,使用示例以......
  • JavaScript
    JavaScript是一种高级解释性脚本语言,已得到广泛使用,是Web开发的重要工具。它由NetscapeCommunicationsCorporation、Mozilla基金会和ECMAInternational开发。它易于学习和实施,并允许开发人员增强网页以提供身临其境的用户体验。JavaScript入门非常简单,您只需要一个用......
  • 集合框架(一) Java中Map的常见方法的使用及循环的五种方式
    Map是Java中的一种集合,它是一种键值对的映射表,可以根据键快速获取对应的值。@[toc]##1.常见使用方式以下是Java中Map的常见方法使用示例及运行结果:###1.1存储键值对使用put()方法向Map中添加键值对:```javaMap<String,Integer>map=newHashMap<>();map.put("apple",10......