0

请看看我的逻辑是否正确我不知道如何实现我正在尝试做的事情。我是java初学者。

Game 是一个类,用于在游戏完成后存储该用户的名称和步数。

[第一种方法]

private game[] gameArray = new game[10];

for(int i = 0; i <gameArray.length;i++){
         gameArray[i].setName(nameTxt.getText());
         gameArray[i].setpSteps(stepsCount);
    }

通过单击历史按钮,他们将获得前 10 个人的姓名和步数。

JOptionPane.showMessageDialog(null,
       "Player's Name No. of Steps"+
       "\n"+gameArray[i].toString());

-问题:

1)此代码仅限于前 10 个结果,无论如何我可以获得所有以前的结果

2)此代码不起作用!

[第二种方法-这也行不通!]

private game[] gameArray = new game[10];

// Storing the name of player[i]

gameArray[i].setName(nameTxt.getName());

// Storing the number of steps player[i] took.

gameArray[i].setpSteps(stepsCount);

//Displaying previous 10 players name and steps

JOptionPane.showMessageDialog(null,
       "Player's Name No. of Steps"+
       "\n"+gameArray[i].toString());
4

1 回答 1

1

几点:

  • 您不能直接将数组转换为String通过,toString()因为它在 Java 中不受支持,您应该使用Arrays.toString(..)
  • Java 数组具有静态大小,如果要存储整个历史记录,则需要一个动态数据结构作为 anArrayList<Game>或 aLinkedList<Game>
  • 类名应大写(Game, not game
  • 如果不了解您Game班级的内部情况,就不可能说出什么不工作以及为什么不工作,我们甚至不知道它应该做什么
于 2013-02-03T15:08:35.920 回答