Hinzufügen von Objekten zu einem arraylist in java

Ich bin versucht zu schreiben, eine solitiare-Spiel auf java. Ich versuche, fügen Sie der Karte die Objekte meiner arraylist, aber die MakeDeck-Funktion nicht richtig funktioniert.

public class PileOfCards {
public ArrayList<Card> pile = new ArrayList<Card>();
Card tempo;

public PileOfCards() {
  pile = new ArrayList<Card>();

}

public void MakeDeck() {

    for (int i=0;i<13;i++){
        tempo = new Card(i+1, "FaceDown", "Clubs");
        pile.add(tempo);

    }
    for (int j=0;j<13;j++){
        tempo = new Card(j+1, "FaceDown", "Diamonds");
        pile.add(tempo);
}
    for (int k=0;k<13;k++){
        tempo = new Card(k+1, "FaceDown", "Hearts");
        pile.add(tempo);
    }
    for (int l=0;l<13;l++){
        tempo = new Card(l+1, "FaceDown", "Spades");
        pile.add(tempo);
    }
} 

Wenn ich versuche, drucken Sie die Werte, die es gibt "0, null, null," , 52 mal. Was ist das problem? Wie es aussieht, kann ich nicht erreichen, um der ArrayList, aber ich weiß nicht, warum.

Bearbeitet:

Karte Konstruktor:

   public Card(int valueTemp, String suitTemp, String statusTemp) {
    valueTemp = value;
    suitTemp = suit;
    statusTemp = status;
    }

Print-Funktion:

 public void printPile(){
     for(int i=0;i<pile.size();i++){
     System.out.print(pile.get(i).status);
     System.out.print(" ");
     System.out.print(pile.get(i).suit);
     System.out.print(" ");
     System.out.print(pile.get(i).value);
     System.out.printf("\n");
 }
  • Ohne zu sehen, den code, wo du tust das print-out, wir können nicht wirklich helfen. Ich habe ein paar Theorien darüber, was falsch ist, aber Erstens, bitte fügen Sie den code, der nicht funktioniert, um Ihre original-Beitrag.
  • Was macht Ihr print-Anweisung Aussehen? Und kann man den Konstruktor für Card
  • Nur ein Kommentar, um zu sagen, dass a) Sie brauchen nicht eine neue variable for each-Schleife, b), wenn Sie hinzufügen, wird 1 der schleifenvariablen, warum dann nicht for (int i=1; i <= 13; i++) ...
  • Ich vermute das problem ist in die print-routine. Der obige code scheint OK.
  • Ich fügte hinzu, die "drucken" - Funktion code und den Konstruktor.
InformationsquelleAutor kndmrl | 2013-10-21
Schreibe einen Kommentar