2011-11-16 53 views
1

我正在研究「發電機組」的發電機,我收到一個錯誤,發現變量i無法找到。我明確地宣佈它在for循環10發電機的功率(找不到變量i)

public class EP63 
{ 

    private static int answer; 
    public static int PowerGenerator(double aFactor) 
    { 
     for(int i = 1; i < 12; i++); 
     { 
      answer = Math.pow(aFactor,i); 
      nextPower(); 

      return answer; 

     } 
    } 

    public static double nextPower() 
    { 
     System.out.println(answer); 
    } 
} 

有人可以向我解釋如何解決這個問題?

+0

爲什麼這麼多的反對票? – Marlon

+0

爲什麼大家都投這個帖子呢?我一直在尋找30分鐘的幫助! – DSdavidDS

回答

2

這是此行:

for(int i = 1; i < 12; i++); 

更改爲:

for(int i = 1; i < 12; i++) 

的for循環的主體是一個單一表達式。 ;被解釋爲無操作表達式,所以{ }塊不是循環的一部分,因此i沒有在那裏定義。

2

因爲你有一個;在for循環之後。

這意味着for循環只有一個空語句。 即你的代碼與

相同
for(int i = 1; i < 12; i++) { 
    // nothing 
} 

{ 
    answer = Math.pow(aFactor,i); 
    nextPower(); 
    return answer; 
}