Hi,
Ich habe eine Klasse Karte, Mischmaschine und Ausführen.
Mit der Klasse Karte können neue Spielkarten erstellt werden, diese können dann in dem Objekt Mischmaschine in einer Arrayliste gespeichert werden. Das ganze führe ich in der Klasse Ausführen aus.
Ich erzeuge also in Ausführen ein Mischmaschine und füge immer neue Karten hinzu. Diese möchte ich nun mit Hilfe eines Interators ausgeben:
Klasse Karte
Klasse Mischmaschine
Klasse Ausführen
Nun hab ich zwei Probleme:
1. Neben mischmaschine.add(); erscheint die Meldung "Type safety: The method add(Object) belongs to the raw type ArrayList. References to generic type ArrayList<E> should be parameterized"
2. In der Ausgabe stehen die Typen und Werte nicht, sondern:
Nr3.Karte@111a3ac
Nr3.Karte@110b053
Nr3.Karte@a83b8a
Nr3.Karte@dd20f6
Was mache ich falsch?
Ich habe eine Klasse Karte, Mischmaschine und Ausführen.
Mit der Klasse Karte können neue Spielkarten erstellt werden, diese können dann in dem Objekt Mischmaschine in einer Arrayliste gespeichert werden. Das ganze führe ich in der Klasse Ausführen aus.
Ich erzeuge also in Ausführen ein Mischmaschine und füge immer neue Karten hinzu. Diese möchte ich nun mit Hilfe eines Interators ausgeben:
Klasse Karte
Java:
public class Karte {
String typ;
String wert;
public Karte(String typ, String wert) {
this.typ = typ;
this.wert = wert;
}
}
Klasse Mischmaschine
Java:
import java.util.ArrayList;
import java.util.Collections;
public class Mischmaschine extends java.util.ArrayList {
Karte karte;
ArrayList<Karte> kartenstapel;
public Mischmaschine (){
this.kartenstapel = new ArrayList<Karte>();
}
public ArrayList<Karte> mischen (ArrayList<Karte> kartenstapel){
Collections.shuffle(kartenstapel);
return kartenstapel;
}
}
Klasse Ausführen
Java:
import java.util.Iterator;
public class test {
Mischmaschine mischmaschine;
public static void main(String[] args) {
Mischmaschine mischmaschine = new Mischmaschine();
mischmaschine.add(new Karte ("kreuz", "ass"));
mischmaschine.add(new Karte ("kreuz", "koenig"));
mischmaschine.add(new Karte ("kreuz", "dame"));
mischmaschine.add(new Karte ("kreuz", "bube"));
for (Iterator iter = mischmaschine.iterator(); iter.hasNext();) {
System.out.println(iter.next());
}
}
Nun hab ich zwei Probleme:
1. Neben mischmaschine.add(); erscheint die Meldung "Type safety: The method add(Object) belongs to the raw type ArrayList. References to generic type ArrayList<E> should be parameterized"
2. In der Ausgabe stehen die Typen und Werte nicht, sondern:
Nr3.Karte@111a3ac
Nr3.Karte@110b053
Nr3.Karte@a83b8a
Nr3.Karte@dd20f6
Was mache ich falsch?