存储多个变量。在java中

时间:2015-11-24 19:54:34

标签: java arrays

我正在寻找java(而不是sql)中的方法来存储一些输入。并且能够参考每个条目。

例如,输入信息的人的ID,输入的日期,某种类型的分数(int)。

我能找到的只是一个多维数组。

2 个答案:

答案 0 :(得分:1)

一个潜在的解决方案是为您想要的数据创建一个类,例如:

public class Data {
    private int score;
    private String info, date;

    public Data(String info, String date, int score) {
        this.score = score;
        this.info = info;
        this.data = data;
    }
}

现在,您可以使用用户输入的数据创建这些对象,并将它们添加到集合(即ArrayList)或简单地添加到数组中。这是一个带数组的例子:

Data[] myData = new Data[4]; // 4 is an arbitrary maximum number of entries 

// Get the data into variables

// Now create a new Data object with the information and add it to the array
myData[0] = new Data(info, date, score);

// Repeat this process for all the input

答案 1 :(得分:1)

您正在寻找的内容可以通过多种方式完成,最容易理解的可能是List或ArrayList。

您似乎想要保留一个玩家列表,每个玩家都有一些属性。你可以从创建一个Player对象开始,就像这样

Class Player {
  Public Player(int score, String name) {
  this.score = score;
  this.name = name;

}

  private int score;
  private String name; 

 public void setScore(int score){
   this.score = score; 
 }

public int getScore(){
  return this.score; 
} 
// Repeat for all class variables

然后,您将在其他一个类中声明一个ArrayList。请注意,它具有参数类型Player。

ArrayList<Player> playerList = new ArrayList<Player>(); 

然后您可以将Player对象添加到playerList中,如下所示:

Player p = new Player(345, "randomName"); 
playerList.add(p); 

如果您想要访问其中一个玩家,并且特别是其中一个分数,那么您可以这样做:

int currentPlayerScore = playerList.get(0).getScore(); 

当然,0这里代表ArrayList条目的编号。

祝你好运。