循环:我vs loopCount

Möo*_*öoz 5 java loops naming-conventions

使用变量'i'或有意义的名称如'loopCount'或'studentsCount'等更好吗?

例如

for (int i = 0; i < 10; i++)
{
    for (int j = 0; j < 5; j++)
    {
        System.out.println(i + j);
    } // End of j loop
} // End of i loop
Run Code Online (Sandbox Code Playgroud)

VS

for (int outerLoop = 0; outerLoop < 10; outerLoop++)
{
    for (int innerLoop = 0; innerLoop < 5; innerLoop++)
    {
        System.out.println(outerLoop + innerLoop);
    } // End of innerLoop
} // End of outerLoop
Run Code Online (Sandbox Code Playgroud)

通过更好 ; 主要考虑因素是可读性/惯例.

相关问题循环迭代器命名约定

编辑: 我已经标记了这个java,但欢迎其他语言的答案.

Ale*_*Suo 11

首先,在这里使用Integer是非常昂贵的,因为Integer是不可变的.因此,每次执行增量时,都会将前一个Integer取消装箱,执行增量并创建另一个Integer来保存新值.你需要使用int.

其次,是否有一个可读的名称真的取决于int的语义.如果它只是一个预定数量的循环的控制变量,我认为我很好; 但如果它具有特定含义,那么你可以自由地给它一个更有意义的名字.


Lee*_*ker 6

代码就是沟通:你希望这段代码的读者(从现在起几个月或几年后你可能是谁)在他看到它时会想到什么?对我来说,在一个循环中使用"i"和"j"表示"做这件事10次;变量只是一个约定而没有任何意义",而使用像"studentID"这样的更具描述性的变量则说"这个数字实际上指的是特定的东西"我想使用前者,如果我想不再强调变量本身,后者如果我想强调它.