У меня есть этот выход:Getter возвращает ту же карту в качестве объекта
В методе ->костюм: Сердце Ранг: ЧЕТЫРЕ
Дом: Сердце - ЧЕТЫРЕ
в методе ->Костюм: Алмазная ранга: ACE
Дом: Алмазная - ACE (должно быть Heart-Four) Игрок: Diamond - ACE
После того, как я установил последнюю карту для дома wPlayer, также изменился, но я ничего не вижу в своем коде, который показывает, что он изменен. Даже при отладке.
И следующий код:
public class test{
Card lastCard;
public test(){
this.lastCard=null;
}
public void setLastCard(Card lcard){
this.lastCard=lcard;
}
public Card getLastCard(){
return this.lastCard;
}
static test hPlayer = new test();
static test wPlayer = new test();
public static Card generateCard(Random randoCard){
Suit s = Suit.values()[randoCard.nextInt(Suit.values().length)];
Rank r = Rank.values()[randoCard.nextInt(Rank.values().length)];
System.out.println("IN METHOD--->Suit: "+s+" Rank: "+r);
return new Card(s,r);
}
public static void main(String[] args) throws InterruptedException {
Random randoCard = new Random(System.currentTimeMillis());
hPlayer.setLastCard(generateCard(randoCard));
System.out.println("House: " +hPlayer.getLastCard());
TimeUnit.SECONDS.sleep(10);
wPlayer.setLastCard(generateCard(randoCard));
System.out.println("House: " +hPlayer.getLastCard()+" Player: "+ wPlayer.getLastCard());
}
}
Не могли бы вы показать нам класс «Карта»? что напечатано «Card # toString»? – SomeJavaGuy
Является ли карта использующей любые статические переменные – MadProgrammer
Это был класс карты, который у меня был ниже, что помогло мне сделать что-то похожее на строку, я верю. Спасибо, что посмотрели на это. – user2462320