首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

写代码的技能

2012-09-01 
写代码的技巧平时在写循环语句时,总是习惯性地把变量的自增都放在了for(表达式1表达式2表达式3)的表达

写代码的技巧

平时在写循环语句时,总是习惯性地把变量的自增都放在了for(表达式1;表达式2;表达式3)的"表达式3"语句执行,今天在调试一段源代码的时候发现,这个习惯不经意间会导致代码的健壮性受到影响,如下:

(1)平时习惯性的写法:

?

?

for(int i=0,j=0;i<currentNames.length;i++,j++) {

Name name = currentNames[i];

if(!name.isMarkedForDeleting()) {

newNames[j] = name;

}

}

这样书写时,因为变量j在每一次的循环中都会自增,而不是根据if条件是否得以执行而改变值!因此存在一个隐患,有可能导致j变量值超出了newNames的范围,从而导致IndexOutOfBoundsException异常;而如果谨慎一点写成如下的格式,就避免了不必要的错误。

(2)正确写法:

?

for(int i=0,j=0;i<currentNames.length;i++) {

Name name = currentNames[i];

if(!name.isMarkedForDeleting()) {

newNames[j++] = name;

}

}

j的值只会根据条件执行而得到改变,代码健壮性会更好一些。

备注,留作复习。

?

?

热点排行