![](/img/trans.png)
[英]Java: StringIndexOutOfBoundsException when using .charAt() in for-loop
[英]scope of variables when using for-loop in java - eclipse / compiler error?
我编写了以下代码:
for(int layer = 0; layer <countLayers; layer++);
{
List<Sprite> spritesInLayer = sceneGraph.getLayer(layer);
}
当我编译此代码段时,出现一个错误,在for-Loop内的行中,eclipse抱怨'layer'是一个未知符号[... = sceneGraph.getLayer(layer);]并要我介绍字段/变量/ ...“层”。
但是使用此代码段时,它可以工作。
int layer = 0;
for(layer = 0; layer <countLayers; layer++);
{
List<Sprite> spritesInLayer = sceneGraph.getLayer(layer);
}
有人知道,我在第一个代码中缺少什么吗? 还是这可能是Eclipse / Java编译器的某种错误?
我在Win 7 64位家庭高级版和Eclipse Helios 64位(内部版本20100617-1415)上使用Java 6 JDK Update 20 64位
更改
for(int layer = 0; layer <countLayers; layer++);
至
for(int layer = 0; layer <countLayers; layer++)
虚假的分号表示for循环的主体为空。 以下{....}
被解释为单独的语句。 当然,该layer
不在范围之内。
for
行后删除分号! 在您的示例中,括号的内容未循环,因此layer
未定义...
这就是为什么月食有用的原因!
请删除分号“;” 从下面一行。
for(int layer = 0; layer <countLayers; layer ++);
不需要声明;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.