组合两个不同数据类型的数组

And*_*465 2 java arrays

import java.util.Scanner;

public class scores
{
    static Scanner input = new Scanner(System.in);
    public static void main(String[] args)
    {
        System.out.print("\f");
        int classSize, counterScore, counterName;
        String name;
        double score,average, sum;

        System.out.print("Enter size of class: ");
        classSize = input.nextInt();

        int[] scoreArray = new int[classSize];
        String[] nameArray = new String[classSize];

        counterScore=1;
        counterName = 1;
        average = 0;
        sum = 0;

        for (int x = 0; x < classSize; x++)
        {
            input.nextLine();
            System.out.print("Student " + counterName++ + " Name: ");
            nameArray[x] = input.nextLine();
            System.out.print("Student " + counterScore++ + " Score: ");
            scoreArray[x] = input.nextInt();

            sum = sum + scoreArray[x];
            average = sum / classSize;
        }

        System.out.println(average);
    }
}
Run Code Online (Sandbox Code Playgroud)

我必须制作一个应用程序,让我可以说有多少人参加了测试,然后输入他们的名字和分数.我使用了两个不同的数组,一个是字符串,一个是double.我的输出是为了读取哪些名称低于平均值并显示名称.我不知道如何组合这两个数组,以便它识别此分数与此名称相关,因此显示该名称.

小智 5

我认为你最好的选择是创建一个包含两个字段(名称和分数)的POJO并创建一个数组:

public class Student {
    private String name;
    private int score;

    public Student(String name, int score) {    
        this.name = name;
        this.score = score;
    }

    public String getName() {
        return name;
    }

    public int getScore() {
        return score;
    }
}
Run Code Online (Sandbox Code Playgroud)