Я огляделся, и я не понимаю, почему у меня такая проблема. В принципе, я передаю массив игровых объектов, но после их прохождения я не могу получить доступ к деталям правильно.Ошибка прохождения массива Java
Код:
for(int i = 0; i <= 2;i++){
players[i] = new Player(names[i], chipCount);
System.out.println(players[i].getName());
}
Этот цикл в моей основной метод. У меня есть еще один цикл, который устанавливает трех игроков (Player - это объект, который требует имя и количество фишек, и имеет два метода: getName()
и getChips()
). Игроки - «Боб», «Билли» и «Барни», и в вышеприведенном цикле они печатаются хорошо, однако, когда я передаю массив игроков в мой класс «Игра», пытаясь напечатать имена игроков таким же образом как указано выше, вместо этого печатает «Барни Барни Барни».
Код для класса Game:
public class Game {
Player[] players;
int pot = 0;
public Game(Player[] player){
this.players = player;
}
public void startGame(int rounds){
int roundNumber = 1;
while(roundNumber != rounds){
System.out.println("Starting round " + roundNumber);
System.out.print("Players: ");
for(int i = 0; i <= 2; i++){
System.out.print(players[i].getName() + " ");
}
System.out.println("");
roundNumber = rounds;
}
}
}
И как я звоню игры:
Game game = new Game(players);
Любой знает, почему он не печатает из названия правильно? Я передаю массив неправильно?
Благодаря
Где вы создаете массив 'players' в игре' Game' = новая игра (игроки); ' – BobTheBuilder
Чтобы лучше помочь, опубликуйте [SSCCE] (http://sscce.org/). –