]>
wirehaze git hosting - solitaire.git/blob - src/solitaire/Foundation.java
3 import java
.util
.LinkedList
;
6 final class Foundation
{
7 private final List
<Card
> cards
;
8 private final Suit suit
;
10 Foundation(Suit suit
) {
11 cards
= new LinkedList
<>();
16 public String
toString() {
18 return String
.format("( %s )", suit
);
20 return String
.format("(%s)", cards
.getLast());
23 private boolean isValidNextCard(Card nextCard
) {
24 if (nextCard
.getSuit() != suit
)
28 return nextCard
.getRank() == Rank
.ACE
;
30 Card lastCard
= cards
.getLast();
32 return nextCard
.getRank().isSuccessorOf(lastCard
.getRank());
35 boolean add(Card card
) {
36 if (!isValidNextCard(card
))
48 return cards
.size() == Rank
.RANKS
.size();