Moin,
ich muss gerade so etwas wie "Eliza" nachprogrammieren. Ich stehe vor dem Problem, dass, meiner Vermutung nach, die HashMap nicht gefuelt wird sowie sie soll. Denn als Ausgabewert bekomme ich immer "null".
Zu sagen sei noch, dass ich das ganze in zwei Methoden aufgeteilt hab, einmal in der Methode "antwortHardware" erzeuge ich eine HashMap, und will in die Map per Methode "mapBefuellen" etwas eintragen.
eingabe.readFile(String input) ist eine Methode in einer anderen Klasse, wovon "eingabe" ein Objekt ist. Das ganze liesst einfach eine Textdatei ein.
Wenn irgendwas fuer das Verstaendnis unklar ist bitte nachfragen.
Gruss tanj
ich muss gerade so etwas wie "Eliza" nachprogrammieren. Ich stehe vor dem Problem, dass, meiner Vermutung nach, die HashMap nicht gefuelt wird sowie sie soll. Denn als Ausgabewert bekomme ich immer "null".
Zu sagen sei noch, dass ich das ganze in zwei Methoden aufgeteilt hab, einmal in der Methode "antwortHardware" erzeuge ich eine HashMap, und will in die Map per Methode "mapBefuellen" etwas eintragen.
Code:
public String antwortHardware(String input)
{ int j=0,k=0;
String [] ausgabe;
String antwort=" ";
String [] einlesen=input.split(" ");
for (int i=0; i<einlesen.length; i++)
{ if(einlesen[i].equalsIgnoreCase("ram"))
{ HashMap<String, String> ram =new HashMap<String, String>();
ram=mapFuellen("ramCodeWords.txt", "ramAnswers.txt");
String test = wertigkeit(einlesen, "ramCodeWords.txt");
antwort=ram.get(test);
break;
}
}
return antwort;
}
Code:
public HashMap<String, String> mapFuellen(String fileCode, String fileAnswers)
{ int k=0;
HashMap<String, String> ausgabe =new HashMap<String, String>();
String [] codeword;
k=((eingabe.readFile(fileCode)).length);
codeword=new String [k];
String [] answer;
k=((eingabe.readFile(fileAnswers)).length);
answer=new String [k];
for(int i=0; i<k; i++)
{ ausgabe.put(codeword[i], answer[i]);
}
return ausgabe;
}
Wenn irgendwas fuer das Verstaendnis unklar ist bitte nachfragen.
Gruss tanj