for循环中的if语句加break有什么后果!
时间:2011-11-09
来源:互联网
public void setInput(Traffic traffic) {
this.traffic = traffic;
for (IAttribute attr : traffic.getAttrs()) {
if (attr instanceof DpiAttr) {//获取DpiAttr
dpiAttr = (DpiAttr) attr;
floderAttr = dpiAttr.getFloderAttr();
break;//////////////////////////注意此处
} else if (attr instanceof FilesAttr) {//获取FilesAttr
filesAttr = (FilesAttr) attr;
}
}
if (null == dpiAttr) {
dpiAttr = DpiModelFactory.eINSTANCE.createDpiAttr();
traffic.getAttrs().add(dpiAttr);
}
if (null == floderAttr) {
floderAttr = DpiModelFactory.eINSTANCE.createFloderAttr();
dpiAttr.setFloderAttr(floderAttr);
}
if (null == filesAttr) {
filesAttr = ModelFactory.eINSTANCE.createFilesAttr();
traffic.getAttrs().add(filesAttr);
}
initData();
}
我在if中加了break将有什么样的严重后果 请大家帮我分析下
作者: b97672y 发布时间: 2011-11-09
一般if都是判断要查找的目标,如果找到了目标,后面就不需要再查找了,所以就break退出for循环
作者: qybao 发布时间: 2011-11-09
作者: shixitong 发布时间: 2011-11-09
影响就是,如果你找到dpiAttr和floderAttr就break,那么就不会再查找filesAttr了,所以会导致后面的
if (null == filesAttr)成立
作者: qybao 发布时间: 2011-11-09
作者: huang_1106 发布时间: 2011-11-09
作者: xiaoqiuwyh 发布时间: 2011-11-09
作者: liujun12355 发布时间: 2011-11-09
作者: funfenffun 发布时间: 2011-11-09
@Override
public void setInput(Traffic traffic) {
this.traffic = traffic;
for (IAttribute attr : traffic.getAttrs()) {
if (attr instanceof DpiAttr) {//获取DpiAttr
dpiAttr = (DpiAttr) attr;
……
在if 中加break 满足就会 跳出 for 循环了!!
作者: mgz521009 发布时间: 2011-11-09
作者: guobing965816 发布时间: 2011-11-09
作者: chenzhi306721 发布时间: 2011-11-09
作者: jya126 发布时间: 2011-11-09
作者: java_123456789 发布时间: 2011-11-09
作者: canghaiguzhou 发布时间: 2011-11-09
作者: AK_47_A 发布时间: 2011-11-09
dpiAttr = (DpiAttr) attr;
floderAttr = dpiAttr.getFloderAttr();
break;//////////////////////////注意此处
} else if (attr instanceof FilesAttr) {//获取FilesAttr
filesAttr = (FilesAttr) attr;
}
}
if (attr instanceof DpiAttr) {//获取DpiAttr
这个条件成立的话 就跳出for循环 ,执行以下语句
if (null == dpiAttr) {
作者: cai5 发布时间: 2011-11-09
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28