昨天客户对我们项目组的一个编码规范(或者叫编码习惯吧)提出了比较严厉的批评,我们有人是这样写的(省略了无关语句):
for(int i=0,i<sum,i++){
    do{
        i++;
    } while(判断条件);
    i--;
}
也就是说,在for循环中i不是正常的从1到sum的那样执行,因为在其内部i++写在do-while的内部,i--写在do-while的外部,所以有可能这一次循环i=2,而下一次循环i就直接变成了10,甚至超过了sum。
不知道这样写有什么坏处和恶劣的影响,请各位高手不吝赐教~~~

解决方案 »

  1.   

    除非存在类似数组,那样做可能导致超出数组长度。其它好像没什么危害,只要楼主保证它是按你预想的运行的p.s. http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html Java的编码规范
      

  2.   

    多谢楼上~~~
    客户的说法是影响了代码的可读性,他说看不懂这段代码,结果我们改成了用map,代码长度比原来长了几倍,难道这样写代码真的就看不动了吗?
      

  3.   

    我想你们应该在这样的地方给出一定的注释,单纯看这段代码确实让我感到迷惑,如果你在旁边给出这样写的理由,客户不会要求你“结果我们改成了用map,代码长度比原来长了几倍”
      

  4.   

    比较乱,可读性很差。
    要是我就把for循环里面的代码提取出来做个小函数