2017-01-31 20 views
-1

我在計算機編程的第一週,我需要弄清楚如何將數組返回給main。我希望外循環爲兩種輸入類型(賦值和實驗)重複內部循環,然後我想將平均賦值和平均實驗值作爲數組返回給main。如何從靜態方法返回數組?

import java.util.stream.*; 
import java.util.Scanner; 

public class Gr { 
    public static void main(String [] args) { 

    } 

    public static void taskAvg() { 
     Scanner stdin = new Scanner(System.in); 
     int numberOfTasks = 7; 
     String typeOfTask = "Assignment"; 
     int taskTotal = 10; 
     double[] taskGrades = new double[11]; 

     for (int i = 1; i <=2; i++) { 
      System.out.println("\nInput " + typeOfTask + " (maximum " + taskTotal + ")"); 
      for (int j = 1; j <= numberOfTasks; j++) { 
       System.out.print(" #" + j + "==>"); 
       taskGrades[j] = stdin.nextDouble(); 
       if (taskGrades[j] > taskTotal || taskGrades[j] < 0) { 
        System.out.println("Oops! That's not right. Please try again."); 
        System.out.print(" #" + j + "==>"); 
        taskGrades[j] = stdin.nextDouble(); 
       } 
      } 
      double taskSum = DoubleStream.of(taskGrades).sum(); 
      double taskAverage = taskSum/numberOfTasks; 
      numberOfTasks = 10; 
      typeOfTask = "lab"; 
      taskTotal = 1; 
     } 
    } 
} 
+1

家庭作業?先嚐試一些嘗試,試試谷歌這是一個很好的資源。如果你有一個具體的問題(我試過這個,這是我期望的結果),然後返回:-) – Ken

+1

你試過返回什麼;聲明? – rahulsm

+0

https://docs.oracle.com/javase/tutorial/java/javaOO/returnvalue.html – Roland

回答

3

首先你需要改變函數的類型來返回一個數組。

public static double[] taskAvg(){ 
    double[] taskGrades = new double[11]; 

    ... // Do your stuff 

    return taskGrades; 
} 

然後您需要將值賦給main中的變量。

public static void main(String [] args) { 
    double[] result = taskAvg(); 
} 
+0

'雙'與上面的D和'雙'與較低的d是不一樣 –

+0

typeO,固定它。 –

+0

@PurpleMonkey PLZ標記答案已被接受。 –