语法:
continue 标号名
break 标号名
作用:
continue 标号名 : continue 后的标号名 应该标识 在外层循环语句 ,其作用是使 程序的流程 转入标识的循环层次,继续执行
break 标号名 : break 跳出 这个标识的语块,执行该语句的后续语句;
代码:
public class ContinueWithLableExample {
public static void main(String[] args) {
String searchMe="Look for a substring in me";
String substring="for";
boolean foundIt=false;
int max=searchMe.length()-substring.length();
System.out.println(searchMe.length());
test:
for(int i=0;i<=max;i++){
int n =substring.length();
System.out.println(n);
int j=i;
int k=0;
System.out.println(k);
while(n-- !=0){
if(searchMe.charAt(j++)!=substring.charAt(k++)){
System.out.println("j= "+j);
System.out.println("k= "+k);
continue test;
}
}
foundIt=true;
break test;
}
System.out.println(foundIt?"FoudIt":"Didn't find it");
}
}
输出结果:
26
3
0
j= 1
k= 1
3
0
j= 2
k= 1
3
0
j= 3
k= 1
3
0
j= 4
k= 1
3
0
j= 5
k= 1
3
0
FoudIt
分析这串代码的运行轨迹:
1:代码都是顺序执行;
2:此处是双层循环,有嵌套的continue 和break语句;
当
while(n-- !=0){
if(searchMe.charAt(j++)!=substring.charAt(k++)){
System.out.println("j= "+j);
System.out.println("k= "+k);
continue test;
}
}
当if
if(searchMe.charAt(j++)!=substring.charAt(k++)){
System.out.println("j= "+j);
System.out.println("k= "+k);
continue test;
}
当if中的条件为真 则 continue test,一次一次的跳出
|
.
.
.
循环
.
.
.
|
当循环到 第 六 次;
即:int j=5
n=3
j++ 为6
k++ 为1
此时if中的条件为false; 就会运行while(n-- !=0){}的循环
n=2;
j++ 为7;
k++为2
此时if中条件为false;任然运行while(n-- !=0){}的循环
n=1;
j++ 为8;
k++为3;
此时if中条件为false,运行while(n-- !=0){}此时n=0 跳出while循环执行
foundIt=true;
break test;
跳出test了
此时 foundIt = true.
分析:
n循环的次数 和 substring的length(),这样就判定了 substring 是否与string中的匹配;
另外 在同一个循环中 变量是不断的赋值和赋值,j and k 是一个局部变量
分享到:
相关推荐
从书名《Idiot's Guides to Beginning Programming》以及序言中我们可以了解到,这本书是由Idiot's Guides系列出版的,旨在为初学者提供简单易懂的学习体验。Idiot's Guides系列的特点是将复杂的问题简化,使读者能...
尽管模板提供了诸多便利,但很多程序员往往因为其复杂的语法结构和难以理解的编译错误而对其望而却步。本文旨在通过深入浅出的方式介绍 C++ 模板的基本概念、语法以及应用场景,帮助读者克服学习障碍,掌握这一重要...
标题中的“Idiot”可能是指一个特定的字体或者设计项目,但没有足够的上下文来深入解释。描述同样简短,没有提供任何额外的信息。不过,根据提供的标签,“字体”是我们要探讨的主要知识点。 字体是计算机图形学和...
标题“superidiot”可能指的是一个安全工具或软件,它专用于加密个人文件和文件夹。这个工具的主要功能包括临时加密和永久解密,这表明它提供了两种不同的加密模式,以适应用户的不同需求。临时加密可能适用于那些仅...
【小生意管理基础】 在《傻瓜指南系列-如何作小生意》这本书中,作者Larry Easto为加拿大的创业者提供了一本全面的指南,旨在帮助那些想...通过深入阅读,创业者可以获得必要的知识和信心,以应对创业路上的各种挑战。
本书通过深入浅出的讲解,让即便是“完全傻瓜”也能理解并实践提高智商的有效途径。 ### 提升智商的重要性 在现代社会,智商被视为个体成功的重要因素之一。高智商不仅意味着更强的学习能力、更好的问题解决技巧,...
Explorer扩展编程的指导资料,包括一个chm教程以及其对应的源代码。 Part I - A step-by-step tutorial on writing shell extensions Part II - A tutorial on writing a shell extension that operates on ...
标题中的"idiot"在这里可能是指一个特定的字体或者与计算机编程相关的术语,但由于信息有限,我们无法确定其确切含义。通常在IT行业中,"idiot"不太可能是一个专业的术语,而可能是一个项目、文件名或者某种特殊的...
在Java Web领域,Sun公司提供了关于XML和Java的详尽教程,这对于理解和应用XML至关重要。 XML文档必须是规范的,这意味着它遵循一定的规则:标签是大小写敏感的,所有属性值必须用引号包围,空元素需以斜杠结尾(如...
详细说明Windows Shell的编程指南,可以处理Windows Explorer资源管理器很多的交互,比如文件复制和剪切,鼠标右键菜单的添加,任意文件的图标的修改和叠加,系统文件拷贝进度条的控制等等,文件属性自定义扩展页和...
从给定的文件信息中,我们可以提炼出一系列与Java编程语言相关的知识点,这些知识点主要围绕Java的历史、特性、应用以及其在互联网环境中的角色展开。 ### Java的历史与发展 Java最初由Sun Microsystems公司(现已...
物联网(Internet of Things, IoT)是信息技术领域的一个重要分支,它涵盖了通过互联网连接的各种物理设备、传感器...在实际开发和学习过程中,阅读和理解这些代码将有助于提升对物联网ID管理和相关Python技术的理解。
标题中的"American idiot"是对社会现象的辛辣讽刺,反映了乐队对当时美国文化和社会状况的批判,特别是对媒体操控、战争狂热以及个人主义的质疑。专辑通过一系列歌曲,构建了一个名为"Jesus of Suburbia"的角色,他...
HTML3.2是Web开发早期的一个重要版本,它为初学者提供了一个基础的框架来理解和构建网页。这个压缩包"HTML3.2Ref_wilbur.zip_idiot"显然是为那些对HTML不熟悉,或者自称“idiot”(新手)的人准备的参考资源。下面将...
对于初学者、新手或者对CSS不太熟悉的“idiot”或“dummies”来说,理解并掌握CSS 2.1的基本概念和用法至关重要。 **一、CSS基础** 1. **选择器与声明**:CSS的核心在于选择器和声明。选择器是用来定位HTML元素的...
【标题】"CST_Patch11_Fixxxx_admin_idiot_" 暗示这是一个针对"CST"系统(可能是某个软件或服务的缩写)的第11个补丁修复程序,专门解决与"admin_idiot"相关的错误或安全问题。在IT行业中,补丁通常是用来修复软件...
Java音乐播放器是一种基于Java和JavaScript技术开发的多媒体应用程序,主要功能是播放音频文件,提供丰富的用户交互体验,如设置动态背景、逐行高亮显示歌词、控制播放进度、切换上下曲目以及暂停和继续播放等。...