最开始没有学习java 学习的是C语言然后工作开始用java,但当时并没有仔细看过java的书籍,也是大致一翻就看跟C语言很像,了解了基本语法就没有深究了,今天看书开始发现之前没有了解过的语法
带标签的break ,带标签的continue:
我最开始了解的break 是switch中的终止,for while do..while这些循环中的终止,我曾经写过循环的3层嵌套,当第三层中需要终止嵌套的所有循环时,break就要一层一层的退出循环,自己写条件判断,恶心了半天还觉得这个代码太多余了
现在才发现java中有跳出所有循环的带标签的break; 这个带标签的break是goto这个语法来的,不要问goto是什么,其实goto也是一个用来循环的语句,因为goto可以*设置跳跃循环的点,导致程序的bug和维护会有很多的问题,结果被诟病没人在
项目中使用了,但它有个优点就是可以任意跳出循环跳到标签的位置,带标签的break和带标签的continue就这么应运而生。
接下来看看代码:
int i =0;
int j = 0;
label:while(true){
//我是第一层循环
while(true){
//我是第二层循环
if(j*i == 81)
break label; // continue label
j++;
}
i++;
}
label: 就是标签 要终止的位置
break label :终止结束到标签 结束语句
continue label: 终止本次循环 跳到标签位置进行接下来的循环
是不是很简单,就是很简单的理解,作为学习记录~