这个问题看起来非常明显,但是我看不出我的错...我在for-each循环中声明了一个int变量,看起来我无法修改它.
for(String tmp : list) {
int i = 0;
System.out.println("i = " + i);
i++;
}
Run Code Online (Sandbox Code Playgroud)
List是一个非空的LinkedList,存在于代码中的某个位置.输出是:
i = 0
i = 0
i = 0
Run Code Online (Sandbox Code Playgroud)
甚至可以在这样的循环中修改int的值吗?谢谢.
对于每个循环,您将创建一个新 i变量,该变量与先前循环迭代中的先前变量完全无关.解决方案:在循环上方声明它.
int i = 0;
for(String tmp : list) {
System.out.println("i = " + i);
i++;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
937 次 |
| 最近记录: |