`
rbible
  • 浏览: 52861 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Java标签使用

 
阅读更多

很多程序设计语言中有goto语句,goto语句的使用,使的程序变得难以读懂,尽管goto仍是Java的一个保留字,但并未在语言中得到正式使用;Java没有goto。然而,在break和continue这两个关键字的身上,我们仍然能看出一些goto的影子。它并不属于一次跳转,而是中断循环语句的一种方法。之所以把它们纳入goto问题中一起讨论,是由于它们使用了相同的机制:标签。

下面是一个例子,介绍一下这种标签在java中的使用。

   

int i = 0;
System.out.println("label1");
label1: for (int k = 0; k < 5; k++) {
    i++;
    if (k == 2) {
       break label1;
    }
    System.out.println(i);
}

 

 

输出结果是:

label1

1

2

这说明当k=2时,执行了break语句,跳转到了label1标签处,但是并没有在进入这个for语句块。

int j = 0;
System.out.println("label2");
label2: for (int k = 0; k < 5; k++) {
    j++;
    if (k == 2) {
       continue label2;
    }
    System.out.println(j);
}

 

输出结果是:

    label2

    1

    2

    4

    5

这说明当k=2时,执行了continue语句,跳出了循环没有执行println语句,然后从label2标签的地方再次进入for语句块。

上面这两种情况的结果与不使用标签的,只使用break和continue的情况是相同的。因而体现不出标签的作用。

 

System.out.println("label3");
int h = 0;
label3: for (int k = 0; k < 5; k++) {
    System.out.println("label3 第一层");
    for (int m = 0; m < 5; m++) {
       System.out.println("label3 第二层");
       h++;
       if (m == 2) {
           break label3;
       }
       System.out.println(h);
    }
}

 

输出结果是:

    label3

    label3 第一层

    label3 第二层

    1

    label3 第二层

    2

label3 第二层

这说明当k=m时,执行了break语句,跳转到了label3标签处,但是并没有在进入这个for语句块。

System.out.println("label4");
int l = 0;
label4: for (int k = 0; k < 5; k++) {
    System.out.println("label4 第一层");
    for (int m = 0; m < 5; m++) {
       System.out.println("label4 第二层");
       l++;
       if (m == 2) {
           continue label4;
       }
       System.out.println(l);
    }
}

 

输出结果是:

label4

label4 第一层

label4 第二层

1

label4 第二层

2

label4 第二层

label4 第一层

label4 第二层

4

label4 第二层

5

label4 第二层

label4 第一层

label4 第二层

7

label4 第二层

8

label4 第二层

label4 第一层

label4 第二层

10

label4 第二层

11

label4 第二层

label4 第一层

label4 第二层

13

label4 第二层

14

label4 第二层

这说明当m=2时,执行了continue语句,跳出了循环没有执行println语句,然后从label3标签的地方再次进入for语句块。

当有多从循环的时候,程序只想跳出内层循环,而不跳出外层循环的时候就可以使用这样的break和continue标签了。这种嵌套循环也是适合while语句的。

当然你也可以写出这样的代码

label5:{
       int b=0;
       if(tag){
          break label5;
         
       }
       ......
   }

 

用以跳过下面省略了的代码,当然这样的写法完全可以使用if else代替。

下面是对这个用法的总结:

(1) 简单的一个continue会退回最内层循环的开头(顶部),并继续执行。

(2) 带有标签的continue会到达标签的位置,并重新进入紧接在那个标签后面的循环

(3) break会中断当前循环,并移离当前标签的末尾。

(4) 带标签的break会中断当前循环,并移离由那个标签指示的循环的末尾。

 

 

转自:http://blog.csdn.net/whiteotiger/article/details/6522261

分享到:
评论

相关推荐

    jsp页面java标签库

    在JSP页面中,Java标签库扮演着至关重要的角色,它允许开发者使用预先定义好的标签执行各种操作,例如数据输出、流程控制、迭代处理以及异常处理等。 JSP自带的核心标签库中,包含了许多用于简化Web开发的标签。...

    Java标签架包Java标签架包

    Java标签库(Java Tag Library,JSTL)是Java服务器端开发中的一个重要组成部分,它提供了一组预定义的标签,用于简化JSP页面的编写,提高代码的可读性和可维护性。Java标签架包通常包含多个核心标签库,如JSTL Core...

    java web标签技术

    在Java Web中,标签技术主要包括JSP标准标签库(JSTL)和自定义标签(Custom Tags)。 一、JSP标准标签库(JSTL) JSTL是由Apache软件基金会开发的一个开放源代码项目,它提供了用于处理常见任务的标签,如国际化...

    Java_斑马打印机打印标签

    本项目专注于利用Java语言来实现斑马打印机的标签打印功能,且支持中文字符的打印,这对于需要中文标签的企业来说至关重要。 首先,我们要了解Java与硬件交互的基本原理。Java本身并不直接支持硬件操作,但可以通过...

    Java web标签大全

    在Java Web中,可以通过使用jQuery、Dojo、Prototype等JavaScript库,或使用诸如RichFaces、ICEFaces等提供Ajax支持的Java库来实现。虽然AJAX不是严格意义上的JSP标签,但可以通过JS库提供的函数与服务器进行异步...

    java 标签的制作

    总的来说,理解Java标签的制作涉及到对Java Swing组件的理解,包括如何创建、设置属性、布局管理,以及如何利用各种工具进行开发和调试。通过深入学习和实践,你可以创建出功能丰富的用户界面。

    java标准标签库参考文档

    java标签库

    java自定义标签教程

    Java自定义标签是JSP技术中的一个重要特性,允许开发者创建可重用的自定义组件,这些组件可以像HTML标签一样在JSP页面中使用,增强了代码的可读性和可维护性。在Java中,自定义标签是通过实现特定的接口或继承已有的...

    java据word标签写入相应信息

    在Java编程环境中,处理Microsoft Word文档通常涉及到使用第三方库,如Apache POI或者JODConverter。这些库允许开发者以编程方式读取、修改和创建Word文档。本篇将深入探讨如何利用Java根据Word文档中的标签来写入...

    java自定义标签 可运行

    Java自定义标签是Java Web开发中的一个重要特性,它允许开发者创建可重用的代码段,类似于HTML标签,但具有更强大的功能和灵活性。...理解并熟练使用自定义标签,对于提升Java Web开发的专业技能大有裨益。

    java 读取html过滤标签

    在Java编程中,读取HTML并过滤特定标签是一项常见的任务,尤其在处理网页抓取、数据提取或构建网络爬虫时。这篇博文链接虽然没有提供具体的内容,但我们可以通过标题和标签来推测其主要讨论的内容。这里我们将深入...

    java标签库

    总的来说,Java标签库提供了一种强大而灵活的方式来构建JSP应用,减少了脚本语言的使用,提高了代码的可读性和可维护性。对于新手来说,熟练掌握JSTL和自定义标签库的创建是提升JSP编程技能的重要一环。

    java中使用标签来显示图片源码

    本教程将专注于如何使用Java中的标签组件(JLabel)来显示图片,并将其设置为窗口的背景。我们将通过分析提供的代码和资源文件来理解这个过程。 首先,`pic.java` 文件很可能是实现这一功能的主要Java源代码。在...

    java web 标签大全

    以上只是Java Web标签使用的一小部分,实际应用中还有许多其他框架和库提供的标签,如Hibernate Validator的校验标签,以及各种JavaScript库(如jQuery)与服务器端交互的Ajax标签。熟练掌握这些标签,能显著提升...

    java中自定义标签的使用方法

    本篇文章将深入讲解Java中自定义标签的使用方法,包括基本概念、创建过程以及实际应用。 首先,我们需要理解自定义标签与标准JSP标签的区别。标准JSP标签如`&lt;jsp:include&gt;`、`&lt;c:if&gt;`等是Java EE提供的一组预定义...

    java自定义标签分页

    总结起来,这个主题提供了一个完整的解决方案,从理论到实践,涵盖了如何在Java应用中使用自定义标签实现分页功能。通过学习和应用这些材料,开发者不仅可以掌握自定义标签的基本原理,还能了解到如何设计和实现一个...

    java自定义标签.......java自定义标签

    学习和使用Java自定义标签,可以帮助开发人员更好地组织JSP页面,提高代码的模块化和重用性。同时,通过阅读提供的压缩包文件,如"初试jsp自定义标签库 - Java编程.htm",可以深入理解自定义标签的创建过程和使用...

    标签打印机JAVA串口打印源代码

    总结起来,这个资源提供了一个使用JAVA进行串口通信的DEMO,主要目标是控制标签打印机进行不干胶打印。通过学习和理解这个DEMO,开发者可以学习到如何在JAVA中进行串口通信,以及如何构建针对特定打印机的控制逻辑。...

    java 文本标签大全 api

    本文档集合涵盖了广泛的Java Web标签,旨在为开发者提供详尽的API参考和使用指南。 1. JSP标准标签库(JSTL) JSTL是JavaServer Pages Standard Tag Library的缩写,它提供了许多预定义的标签,用于执行常见的JSP...

    实用java分页标签

    总的来说,Java分页标签是Java Web开发中不可或缺的一部分,通过合理使用它可以提升用户体验,同时降低服务器负载。理解并熟练掌握分页标签的使用,对于提高项目质量和开发效率有着重要的意义。

Global site tag (gtag.js) - Google Analytics