0

如何放置/访问存储到/来自对象的数据?

我正在尝试制作一个非常简单的游戏,因此我制作了一个对象数组来存储有关玩家的信息,如下所示:

     player[] p = new player[4];

然后将播放器对象放入数组中,如下所示:

for(int i = 0; i < 4; i++)
{
p[i] = new player();
}

上面应该创建一个包含 4 个元素的数组,每个元素都有一个播放器对象。

现在……是我迷路的地方。这是将数据成员放入对象的语法吗?

player() = {name, turn, rolledNumber}

// 字符串名称,布尔值,introlledNumber

//从 wiki 上得到这个可能不是一个安全的选择,但是在 Oracle 教程网站和其他 java 教程网站上搜索了几个小时后,我空手而归。我已经看到这是用数组完成的,所以也许我认为它在某些方面是相似的。

抱歉,如果这是一个空洞的问题,我刚刚开始将 Java 作为一种爱好来学习。

4

2 回答 2

1

Player您可以添加一个带有参数的参数,而不是使用默认构造函数 for nameturn& rolledNumber,然后您可以使用:

for(int i = 0; i < 4; i++) {
  p[i] = new Player(name, turn, rolledNumber);
}

仍然可以通过 setter 和 getter 访问各个类成员变量。这称为封装

Java代码约定表明类采用首字母大写,因此按照指南在此处player编写。Player

于 2013-02-05T01:20:33.433 回答
1

为了将信息存储到 Player 类中的状态(即在本例中为 name、turn、rolledNumber)变量中,您需要将它们设置在自定义构造函数中,将它们公开(通常是个坏主意),或者提供 getter/setter方法。鉴于您可能想要依次更改数据并稍后更改rolledNumber,但未提及一种可能的解决方案是使用构造函数和getter / setter方法实现一个类,如下所示......

public class Player
{
    private String playerName;
    private boolean playerTurn;
    private int rolledNumber;

    public Player(String name, bool turn, int number)
    {
        playerName = name;
        playerTurn = turn;
        rolledNumber = number;
    }

    public String getName() { return playerName; }
    public boolean getPlayerTurn() { return playerTurn; }
    public void setPlayerTurn(boolean turn) { playerTurn = turn; }

    ...

}

然后按照上面 Reimeus 的示例调用构造函数。

于 2013-02-05T01:41:50.217 回答