在项目中碰到的问题,解决之后就想记录下来;说明一下,该方法是在百度中搜索出来的,只是想自己记录起来方便以后回忆使用,并非有意抄袭,请谅解
使用标号(使用标号跳出两层或者多层for循环):
outterLoop:
for
(
int
i =
0
; i <
9
; i++){
for
(
int
j =
0
; j <
8
; j++){
break
outterLoop;
// 跳出外层循环
}
};
代码:
for (VendorInfo vendorInfo : list) { String isBind = "2"; Map<String,Object> mapA = new HashMap<String,Object>(); mapA.put("companyId", topCompanyId); //根据一级公司id查询包含该一级公司及二级公司所有的机房信息 List<BaseInfoVO> list1 = baseInfoService.HandleGetBaseInfoByCompanyIds(mapA);
//标号标记要跳出的循环 outterLoop :for (BaseInfo baseInfo : list1) { String[] vendorArray = (baseInfo.getOperator() == null ? "" : baseInfo.getOperator()).split(","); for (String vendor : vendorArray) { if (vendor != null && !"".equals(vendor)) { if (vendor.equals(vendorInfo.getId() + "")) { isBind = "1"; break outterLoop; // 会跳出标号标记的那个循环 } } } } vendorInfo.setIsBind(isBind); }