for或者while的标记循环

今天在写代码的时候,发现一个for循环前有一个字母,不知道这个是什么语法,后来查了一下,这个语法是用来实现标记循环的功能

这个是代码块


r:for(int rowNum = 1; rowNum //判断编码是否为空
HSSFCell cellA = row.getCell(0);
String codeVal = POIUtils.getCellValue(cellA);
if(StringUtils.isEmpty(codeVal)){//该行订单号为空
//excpMsg += "第[" + (row.getRowNum()+1) + "]行订单号是空的;";
continue;
}
if(omsCmccOrderList.size()>0){//省移动B2B集合存在订单
boolean flag = false;//标记省移动B2B集合中是否包含该订单
//遍历省移动B2B订单集合
for(OmsCmccOrderObject bound : omsCmccOrderList){
if(codeVal.equals(bound.getOrderNo())){
//excel去重
num = String.valueOf((row.getRowNum()+1));
errMsg = "该行与第["+num+"]行订单号["+codeVal+"]相同!";
cmccOrderMapper.insertExceptionMsg(num, errMsg); //省移动B2B集合中存在该订单
flag = false;
continue r; }else {
//省移动B2B集合中没有重复订单
//判断该订单是否在数据库中已存在,那么调用update函数,那么根据该订单的状态,若是-9那么改成0,并返回审核通过;如果是0那么返回审核通过,如果不存在报错 flag = false;
}
}


这个是上面代码的图片


可以看到在标记1出,出现的r:这个就是标记循环,标记2是最外面的for循环,标记3的地方是一个for循环,标记4的地方就是循环标签出现的地方。

    根据return的语法,如果不同循环标签的话,那么在标记4处的return语句,会跳出该次循环,但是回跳到标记3处的循环,但是如果你要是实现的是跳到标记1处的循环,那么用标签循环这个语法就可以实现。return r,就会跳到标记1处的for循环;

for或者while的标记循环的更多相关文章

  1. CodeGen标记循环

    CodeGen标记循环 标记循环是一个模板文件构造,它允许您迭代CodeGen拥有的标记信息的集合.为了使用标记循环,必须基于至少定义了一个字段标记的存储库结构生成代码.              标 ...

  2. java新手笔记3 运算符&循环

    1.包 2.运算符 public class Operator { public static void main(String[] args) { int a = 5; System.out.pri ...

  3. Swift流程控制之循环语句和判断语句详解

    Swift提供了所有c类语言的控制流结构.包括for和while循环来执行一个任务多次:if和switch语句来执行确定的条件下不同的分支的代码:break和continue关键字能将运行流程转到你代 ...

  4. SQL记录-PLSQL循环

    PL/SQL循环   可能有一种情况,当需要执行的代码块的几个多次.在一般情况下,语句顺序执行:一个函数的第一条语句,首先执行,然后是第二个...等等. 编程语言提供了各种控制结构,允许更多复杂的执行 ...

  5. PL/SQL 循环

    ----PL/SQL基本循环语句 LOOP DECLARE x ; BEGIN LOOP dbms_output.put_line(x); x :; THEN exit; END IF; END LO ...

  6. 控制语句—for循环、while循环

    for循环 基本结构: for(初始条件1:循环条件2:状态改变3){ 循环体4 } 运行流程:1-2-4-3-2-4 while循环 基本结构: var i=0 //初始条件 1 while(i&l ...

  7. 12月5日PHPCMS替换主页

    cms替换主页的步骤 1.先做好静态页面: 2.在D:\wamp\www\phpcms\install_package\phpcms\templates文件夹下建新的文件夹tianqiwangluo( ...

  8. (四)G1 garbage collector

    g1专为大内存,多内核机型设计.可以兼顾高吞吐量和低暂停时间. g1将堆分为多个相同大小内存块,并发的标记线程,使得g1掌握了各个内存块的活对象数量, 内存回收阶段,g1根据用户指定的暂停时间,选择部 ...

  9. java递归应用

    /** * 分配人员数据 * @param num 数据条数 * @param taskUs 人员数据 * @param isend 标记第一次循环 */private void distTaskNu ...

随机推荐

  1. Python date,datetime,time等相关操作总结

    date,datetime,time等相关操作总结   by:授客 QQ:1033553122 测试环境: Python版本:Python 3.3.2 代码实践: __author__ = '授客' ...

  2. 浅谈EditText控件的inputType类型

    android:inputType="none"--默认 android:inputType="text"--输入文本字符 android:inputType= ...

  3. slice()和subString()

    substring() 方法用于提取字符串中介于两个指定下标之间的字符.slice()返回一个子片段,对原先的string没有影响,与subString的区别是,还可以用负数当参数,相当于是lengt ...

  4. NoHttp封装--07 自定义异步任务框架

    MainActivity: public class MainActivity extends Activity implements View.OnClickListener { .... @Ove ...

  5. LRU(最近最少使用淘汰算法)基本实现

     LRU(Least Recently Used) 出发点:在页式存储管理中,如果一页很长时间未被访问,则它在最近一段时间内也不会被访问,即时间局部性,那我们就把它调出(置换出)内存. 为了实现LRU ...

  6. SpringBoot集成Swagger接口管理工具

    手写Api文档的几个痛点: 文档需要更新的时候,需要再次发送一份给前端,也就是文档更新交流不及时. 接口返回结果不明确 不能直接在线测试接口,通常需要使用工具,比如postman 接口文档太多,不好管 ...

  7. (网页)websocket例子

    转载自博客园张果package action; import javax.websocket.CloseReason; import javax.websocket.OnClose; import j ...

  8. jQuery -- 光阴似箭(二):jQuery效果的使用

    jQuery -- 知识点回顾篇(二):jQuery效果的使用 1. jQuery 效果 -- 隐藏和显示:  使用 hide() 和 show() 方法来隐藏和显示 HTML 元素. <!DO ...

  9. Lingo求解线性规划案例3——混料问题

    凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/  某糖果厂用原料A.B和C按不向比率混合加工而成甲.乙.丙三种糖果(假设混合加工中不损耗原料).原料A.B.C ...

  10. C#基础知识之String,Stringbuilder和Stringbuffer

    String可以储存和操作字符串,即包含多个字符的字符数据.这个String类提供了存储数值不可改变的字符串. StringBuilder是线程不安全的,运行效率高,如果一个字符串变量是在方法里面定义 ...