当使用标准for
循环遍历数组时,将使用索引来标识数组中的当前迭代。通常,此变量的名称为i
,j
,k
等。如果使用罗马数字代替这些名称怎么办?作为表示哪个变量属于哪个循环的一种方法,这会更好吗?例如,变量“ iii”仅在第三个循环中可以访问?
标准
for (int i = 0; i < 9; i++) {
// code
}
for (int j = 0; j < 9; j++) {
// code
}
for (int k = 0; k < 9; k++) {
// code
}
for (int l = 0; l < 9; l++) {
// code
}
罗马数字:
for (int i = 0; i < 9; i++) {
// code
}
for (int ii = 0; ii < 9; ii++) {
// code
}
for (int iii = 0; iii < 9; iii++) {
// code
}
for (int iv = 0; iv < 9; iv++) {
// code
}
很显然,在阅读代码时,任何人都可以理解j
是第二个数组的索引,k
是第三个数组的索引,依此类推。但是,我经常发现自己处于这种情况下必须读回变量的确切定义位置以及变量的上下文。我相信通过这种命名约定,即使只是一点索引,它也会缩短识别索引所需的时间。在读取较长的嵌套for循环序列时,尤其如此。