java运动员得分平均值

时间:2017-04-03 16:08:32

标签: java

我正在尝试创建一个计算n名运动员团队平均得分的java程序。每位运动员有3个分数。

1)创建一个包含以下字段的运动员课程:

  • 名称
  • 3个分数的数组
  • setter and getters(他们必须将得分号作为参数。)
  • 清除数据的构造函数 2)另一个课程:
    • 一系列运动员。

注意:要执行的用户操作:

  • 加一名运动员。用户可以添加没有分数的运动员,并在以后添加分数。
  • 添加分数(用户必须提示输入分数,然后为该分数添加所有运动员的分数。)

这是我的代码。

package demo;

public class Athlete {
    private String name;

    private int[] scores = new scores[3];

    Athlete(){
        this.name = "";

        this.scores= new int[]{-1.0, -1.0, -1.0};
    }

    Athlete(String name, int[] scores){
        this.name=name;
        this.scores[0]= getscores(1);
        this.scores[1]= getscores(2);
        this.scores[2]= getscores(3);
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void setscores(int scores, int scoresNumber){
        grades[scoresNumber-1] = scores;
    }

    public int getscores(int scoresNumber){
        return  grades[scoresNumber-1];
    }

    public int[] getscores(){
        scores[0]= getscores(1);
        scores[1] = getscores(2);
        scores[2] = getscores(3);
        return  scores;
    }
}

//在这个测试中,我只是测试一名运动员

我的驱动程序类是

package demo;

import java.util.Arrays;
import java.util.Scanner;

public class AthleteDriver {

public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    Athlete d = new Athlete();
    String name;
    int scoresNumber;
    int score;

    System.out.println("Name ");
    name = sc.nextLine();

    System.out.println("Score number ");
    scoresNumber = sc.nextInt();
    System.out.println("score ");
    score = sc.nextInt();
    d.setscoreGrades(score, scoresNumber);
    System.out.println(d.getscores(scoresNumber));

   System.out.println(d.getscores();
}

我的问题是我无法打印出一系列分数。 d.getscores()给了我一个参考值。

那我怎么能打印出分数数组?

1 个答案:

答案 0 :(得分:0)

  

我的问题是我无法打印出分数数组d.getscores()   它给了我一个参考值

使用Arrays.toString(type[ ] a),它返回指定数组内容的字符串表示。

注意 - 此方法已重载,因此适用于大多数类型(如果不是全部)。

  

那我怎么能打印出分数数组?

替换它:

System.out.println(d.getscores());

System.out.println(Arrays.toString(d.getscores()));