public class Hand {
private final List<Card> list = new ArrayList<>();
private final int capacity;
public Hand(final int capacity) {
this.capacity = capacity;
}
public boolean isFull() {
return (list.size() == capacity);
}
public void add(final Card card) {
Objects.requireNonNull(card);
ExceptionUtils.throwOnFail(this::isFull, IllegalArgumentException::new, "hand is full");
list.add(card);