Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

write a main program class that instantiates a Deck and several Card objects and

ID: 3640597 • Letter: W

Question

write a main program class that instantiates a Deck and several Card
objects and calls each of their methods. The purpose of this class is to verify that
your supporting classes work correctly.

import java.util.ArrayList;

public class Deck {

private ArrayList capacity = new ArrayList(52);

Deck() {
this.capacity = generateDeck();
}

private ArrayList generateDeck() {
ArrayList deckCards = new ArrayList(52);
Card card = null;

for (int i = 2; i < 15; i++) {
card = new Card(i, "Hearts");
deckCards.add(card);
System.out.print(card.toString() + ", ");
}
System.out.println();
for (int i = 2; i < 15; i++) {
card = new Card(i, "Clubs");
deckCards.add(card);
System.out.print(card.toString() + ", ");
}
System.out.println();
for (int i = 2; i < 15; i++) {
card = new Card(i, "Diamonds");
deckCards.add(card);
System.out.print(card.toString() + ", ");
}
System.out.println();
for (int i = 2; i < 15; i++) {
card = new Card(i, "Spade");
deckCards.add(card);
System.out.print(card.toString() + ", ");
}
System.out.println();

return deckCards;
}

public static void main(String[] args) {
Deck deck = new Deck();
}
}
public class Card {

private int value;
private String suit;

Card (int value,String suit) {
this.suit = suit;
this.value = value;
}

public int getValue() {
return value;
}

public void setValue(int value) {
this.value = value;
}

public String getSuit() {
return suit;
}

public void setSuit(String suit) {
this.suit = suit;
}

public String toString() {
String output = null;
if(this.value > 10) {
if (this.value==11) output="J";
if (this.value==12) output="Q";
if (this.value==13) output="K";
if (this.value==14) output="A";
} else {
output = ""+this.value;
}
if(this.suit!=null) {
char[] id = suit.toCharArray();
output = ""+output+ id[0];
}
return output;
}

}

Explanation / Answer


import java.util.ArrayList;

public class Deck {

    private ArrayList capacity = new ArrayList(52);

    Deck() {
    }

    public ArrayList generateDeck() {
        ArrayList deckCards = new ArrayList(52);
        Card card = null;

        for (int i = 2; i < 15; i++) {
            card = new Card(i, "Hearts");
            deckCards.add(card);
        }
        System.out.println();
        for (int i = 2; i < 15; i++) {
            card = new Card(i, "Clubs");
            deckCards.add(card);
        }
        System.out.println();
        for (int i = 2; i < 15; i++) {
            card = new Card(i, "Diamonds");
            deckCards.add(card);
        }
        System.out.println();
        for (int i = 2; i < 15; i++) {
            card = new Card(i, "Spade");
            deckCards.add(card);
        }
        return deckCards;
    }

    public ArrayList getCapacity() {
        return capacity;
    }

    public void setCapacity(ArrayList capacity) {
        this.capacity = capacity;
    }

} public class Card {
    
    private int value;
    private String suit;
    
    Card (int value,String suit) {
        this.suit = suit;
        this.value = value;
    }

    public int getValue() {
        return value;
    }

    public void setValue(int value) {
        this.value = value;
    }

    public String getSuit() {
        return suit;
    }

    public void setSuit(String suit) {
        this.suit = suit;
    }
    
    public String toString() {
        String output = null;
        if(this.value > 10) {
            if (this.value==11) output="J";
            if (this.value==12) output="Q";
            if (this.value==13) output="K";
            if (this.value==14) output="A";
        } else {
            output = ""+this.value;
        }
        if(this.suit!=null) {
            char[] id = suit.toCharArray();
            output = ""+output+ id[0];
        }    
        return output;
    }
       
} public class MainDeck {
    
    public static void main(String[] args) {
        Deck deck = new Deck();        
        java.util.ArrayList<Deck> deckCards = deck.generateDeck();
        java.util.Iterator it = deckCards.iterator();
        
        while(it.hasNext()) {
            Card card = (Card)it.next();
            System.out.println(card.toString());
        }
    }
    
}
import java.util.ArrayList;

public class Deck {

    private ArrayList capacity = new ArrayList(52);

    Deck() {
    }

    public ArrayList generateDeck() {
        ArrayList deckCards = new ArrayList(52);
        Card card = null;

        for (int i = 2; i < 15; i++) {
            card = new Card(i, "Hearts");
            deckCards.add(card);
        }
        System.out.println();
        for (int i = 2; i < 15; i++) {
            card = new Card(i, "Clubs");
            deckCards.add(card);
        }
        System.out.println();
        for (int i = 2; i < 15; i++) {
            card = new Card(i, "Diamonds");
            deckCards.add(card);
        }
        System.out.println();
        for (int i = 2; i < 15; i++) {
            card = new Card(i, "Spade");
            deckCards.add(card);
        }
        return deckCards;
    }

    public ArrayList getCapacity() {
        return capacity;
    }

    public void setCapacity(ArrayList capacity) {
        this.capacity = capacity;
    }

}