I have this output:
IN METHOD -> Suit: Heart Rank: FOUR
House: Heart - FOUR
IN METHOD ->Suit: Diamond Rank: ACE
House: Diamond - ACE (should be Heart-Four) Player: Diamond - ACE
After I set last card for wPlayer house is also changed, but I do not see anything in my code that shows it being changed. Even in debugging.
And the following code:
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() );
}
}