Hi, ich hab hier eine Frage an euch, vielleicht weiß ja wer die Antwort.
In einer HashMap soll eine LinkedList als Key und Value gespeichert werden. In dem Konstruktor werden die drei Container initialisiert und die Listen werden in die Map hinein getan. Dann gibt es eine Methode, die den Listen ein Wert hinzufügt.
Ich glaube ich zweig nochmal eben den COde, damit klar ist wie ich das meine:
Wenn ich das Programm jetzt starte, dann wird der Wert des Arrays ausgegeben aber bei der LinkedList bekomme ich eine NullPointerException. Warum ist dem so? Hab ich was falsch gemacht?
Was ich noch interessant finde ist, dass wenn ich unter Eclipse die Debug View anmache und vor der Ausgabe in die Map reinschaue, dann sind beide Container in der Map enthalten. Beide enthalten auch die hinzugefügten Werte.:autsch: Was läuft hier dann schief?
In einer HashMap soll eine LinkedList als Key und Value gespeichert werden. In dem Konstruktor werden die drei Container initialisiert und die Listen werden in die Map hinein getan. Dann gibt es eine Methode, die den Listen ein Wert hinzufügt.
Ich glaube ich zweig nochmal eben den COde, damit klar ist wie ich das meine:
Java:
public class test {
HashMap<Object, Object> map;
LinkedList<String> listOne;
LinkedList<Integer> listTwo;
String[] arrayOne;
Integer[] arrayTwo;
// Konstruktor
public test(){
map = new HashMap<Object, Object>();
listOne = new LinkedList<String>();
listTwo = new LinkedList<Integer>();
arrayOne = new String[1];
arrayTwo = new Integer[1];
map.put(listOne, listTwo);
map.put(arrayOne, arrayTwo);
}
// Daten werden hinzugefügt
public void addData(){
listOne.add("Hallo");
listTwo.add(12);
arrayOne[0] = "Hallo Array";
arrayTwo[0] = 123;
}
public static void main(String[] args) throws Exception {
test t = new test();
t.addData();
System.out.println(((Integer[])t.map.get(t.arrayOne))[0]);
System.out.println(((LinkedList)t.map.get(t.listOne)).get(0);
Wenn ich das Programm jetzt starte, dann wird der Wert des Arrays ausgegeben aber bei der LinkedList bekomme ich eine NullPointerException. Warum ist dem so? Hab ich was falsch gemacht?
Was ich noch interessant finde ist, dass wenn ich unter Eclipse die Debug View anmache und vor der Ausgabe in die Map reinschaue, dann sind beide Container in der Map enthalten. Beide enthalten auch die hinzugefügten Werte.:autsch: Was läuft hier dann schief?