如何使用 Scanner 将值读入数组

How to read in a value into an array using Scanner

我没有任何代码来展示我正在尝试做什么,因为老实说,我不知道如何处理这个问题。

我想要做的是让用户输入数组中将包含多少个数字。所以基本上,这就是我想要的输出:

How many students in the class? 3

Enter the marks: 76 68 83

The class average is 75.67 %

我可以编写除第一行以外的所有内容。我不知道如何将数字读入数组,以便数组与该数字一样大。

谢谢。

首先,您需要设置扫描仪以读取控制台输入:

Scanner scanner = new Scanner(System.in);

然后您可以使用 scanner.next()scanner.nextInt() 等函数从控制台获取输入。希望这能让您知道从哪里开始。如果您需要查找更多扫描仪功能,请查看 Scanner Documentation

就数组而言,您只需将第一个 int 输入保存到控制台并将其用于大小:

int size = Integer.parseInt(scanner.next());
int[] array = new int[size];

那么你应该可以使用循环来保存每个单独的分数。

 import java.util.Scanner; 

 public class TestArrayInputViaConsole {
   public static void main(String args[]) {
     double sum = 0;
     double avg = 0;
     Scanner sc = new Scanner(System.in);
     System.out.println("Enter how many students are in the class? ");
     int ArraySize = sc.nextInt();
     int[] marks = new int[ArraySize];
     System.out.println("Enter the marks:");

     for(int i = 0; i < ArraySize; i++) {
       marks[i] = sc.nextInt();
       sum = sum + marks[i]; 
     }

     avg = (sum / ArraySize);
     System.out.println("Average of the class : " + avg);    
   } 
 }