![](/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.