2012-07-29 26 views
-1

我得到表達錯誤的非法起動旁邊public static double getAverage (double average) {返回從一個方法與用戶輸入的陣列在Java

我還得到一個錯誤消息:「變量平均不使用」旁邊double average = sum /(double) arr.length;

我一直在工作一段時間,我不知道該怎麼做了。 有什麼建議嗎?

import java.util.Scanner; 

public class Average { 

    public static void main(String [] args){      
    Scanner input = new Scanner(System.in); 
    System.out.print("How many numbers you want to display: "); 

    int n=input.nextInt(); 
    System.out.println("Enter array values: "); 

    int arr [] = new int[n]; 
    int sum=0; 

    for(int i = 0; i < arr.length; i++) { 
     arr[i] = input.nextInt(); 
     sum+=arr[i]; 
     double average = sum/(double) arr.length; 

     public static double getAverage(double average){  
     System.out.println("Average value of array: " + average); 
     { 
      return average; 
     } 
     } 
    } 
+0

@codeguru:最好不要固定原始帖子的縮進,因爲這是導致整體問題的一部分問題。 – 2012-07-29 21:24:03

回答

2

你的方法中創建一個方法,宣告了main(...)方法內的getAverage(...)方法 - 和Java不允許這樣。用一個大括號結束主方法,並在主方法之外創建下一個方法。請閱讀如何在您的教科書或the Java Tutorials, methods section中創建方法,因爲它們都將在那裏解釋。

此外,您還希望使用正確,一致和統一的縮進樣式更好地設置您的代碼的格式。這樣做會阻止你在未來犯同樣的錯誤。

0

刪除所有制表符並將其替換爲空格後,希望您可以看到getAverage()方法正在main()中聲明。這是不允許的。您需要在類中聲明方法,但不能在其他方法中聲明。一旦你修復了函數聲明,我們可以從那裏開始工作。

相關問題