В java, я пытаюсь заполнить список кучей разных объектов. Но происходит то, что каждый раз, когда я добавляю еще один объект в список, все объекты в списке превращаются в одно и то же.Почему все значения в моем списке одинаковы?
Код в вопросе:
private static ArrayList<Card> deck = new ArrayList<Card>();
private static void setupDeck(){
for(int i = 0; i < suits; i++){
for(int j = 0; j < cards; j++){
deck.add(new Card(i,j));
}
}
}
Когда
deck.add(new Card(i,j));
вызывается когда объект уже находится в моем списке становится превращена в дубликате последнего объекта, чтобы добавить в список. Я получаю, что передаю объекты по ссылке, но я не понимаю, почему. Не должно быть сделано мое заявление от
new Card(i,j)
создать новый объект Карты для хранения. Как я могу решить эту проблему?
Что вы подразумеваете под _in моим списком, превращается в дубликат последнего объекта, чтобы добавить его в список_? –
Он должен и не создает новый объект Карты, здесь что-то не так, я думаю, это ваше наблюдение, что именно не так? – luk2302
Возможно, что-то объявлено статическим, что не должно быть ... Показать код класса «Карта». – user000001