Casten Hash Map

Paddel

Bekanntes Mitglied
Hallo Ich habe folgendes Problem was ich nicht so ganz verstehe. Habe eine Has Map der Key ist die abstrakte Klasse A_KI
[Java]public HashMap<A_KI,Double> reward;[/code]
Im Konstruktor hab ich das ganze inialisiert als
Java:
this.reward = new HashMap<A_KI, Double>();
A_KI ist allerdings abstrakt. Und immer wenn ich dann ne Klasse von A_KI ableite und die als Key nehmen will kommt eine Fehlermeldung.
Die Methode ist:
Java:
		public void update_Redwards(A_KI ki, Double reward){
			this.reward.put(ki, reward);
		}

Wie kann ich das anders lösen?
Dachte eigentlich erst an :
Java:
	public HashMap<? extends A_KI,Double> reward;
Konstruktor:
Java:
	public A_Spiel(HashMap<? extends A_KI, Double> reward) {
		
			this.reward = reward;
Nur wenn ich dann
Java:
		public void update_Redwards(A_KI ki, Double reward){
			this.reward.put(ki, reward);
		}
funzt das wieder nicht. Wäre für Hilfe dankbar,...
 
Hallo Ich habe folgendes Problem was ich nicht so ganz verstehe. Habe eine Has Map der Key ist die abstrakte Klasse A_KI
[Java]public HashMap<A_KI,Double> reward;[/code]
Im Konstruktor hab ich das ganze inialisiert als
Java:
this.reward = new HashMap<A_KI, Double>();
A_KI ist allerdings abstrakt. Und immer wenn ich dann ne Klasse von A_KI ableite und die als Key nehmen will kommt eine Fehlermeldung.
Die Methode ist:
Java:
		public void update_Redwards(A_KI ki, Double reward){
			this.reward.put(ki, reward);
		}

Wie kann ich das anders lösen?

Ähm und welche Fehlermeldung? Sollte imo an sich zumindest kompilierbar sein
 

Zurück
Oben