试图创建一个对象数组

Oli*_*ack 4 arrays android

我有一个对象,我试图放入一个数组列表:

class PlayerScores {

String playerName;
int played=0;
int win=0;
int draw=0;
int loss=0;
int points=0;


void playerNameSet(String name){
    playerName=name;
}
void played(){
    played=played+1;
}
void win(){
    win=win+1;
    points();
}
void draw(){
    draw=draw+1;
    points();
}
void loss(){
    loss=loss+1;
}

void points(){
    points = (win*3)+draw;
}

}
Run Code Online (Sandbox Code Playgroud)

基本上,当用户选择了多少玩家时,我想初始化这些对象的数组,但是我收到了错误.这是用于初始化数组然后为玩家分配名称的代码.

数组已经在我的代码开头定义并且是公共的,所以我可以在不同的活动中使用它:"PlayerScores [] playersObjects;"

public PlayerScores[] makePlayerObjects() {
        playersObjects = new PlayerScores[players];
        for(int i = 0; i < players + 1; i++)
        {
            playersObjects[i].playerNameSet(name variable);
        }

    return playersObjects;
}
Run Code Online (Sandbox Code Playgroud)

错误似乎发生在设置名称的行上,但它与name变量无关.

任何帮助都会受到大力赞赏,谢谢,Oli

A--*_*--C 8

您实际上没有在Array中设置对象.首先需要构造一个PlayerScores对象,然后才能访问它.

public PlayerScores[] makePlayerObjects() {
        playersObjects = new PlayerScores[players];
        for(int i = 0; i < playersObjects.length; i++)
        {
            playersObjects[i] = new PlayerScores(); //make the object so we can access it
            playersObjects[i].playerNameSet(name variable);
        }

    return playersObjects;
}
Run Code Online (Sandbox Code Playgroud)