remove method
parent
7491452d4a
commit
93d87aef22
|
@ -37,10 +37,6 @@ public class MyGenericHashMap<K, V> {
|
|||
return key;
|
||||
}
|
||||
|
||||
public void setKey(K key) {
|
||||
this.key = key;
|
||||
}
|
||||
|
||||
public V getValue() {
|
||||
return value;
|
||||
}
|
||||
|
@ -102,6 +98,33 @@ public class MyGenericHashMap<K, V> {
|
|||
|
||||
}
|
||||
|
||||
public V removeValue(K key) {
|
||||
|
||||
int hash = key.hashCode() % SIZE;
|
||||
Entry<K,V> temp = table[hash];
|
||||
if (temp == null)
|
||||
return null;
|
||||
// speicher das prevs Knote von temp
|
||||
Entry<K,V> prevs = null;
|
||||
while(temp != null) {
|
||||
V merker = temp.getValue();
|
||||
// falls der Key gefunden wäre
|
||||
if (temp.getKey().equals(key)) {
|
||||
//falls ja, dann ist meine Knote gleich der Head
|
||||
// und es gibt keine weiter Knoten
|
||||
if (prevs == null)
|
||||
table[hash] = temp.next;
|
||||
else
|
||||
prevs.next = temp.next;
|
||||
return merker;
|
||||
}
|
||||
prevs = temp;
|
||||
temp =temp.next;
|
||||
}
|
||||
return null;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -112,8 +135,8 @@ public class MyGenericHashMap<K, V> {
|
|||
// Fügt das key-value Paar (3009594, "obai") zur HashMap hinzu.
|
||||
t1.put(3009594, "obai");
|
||||
t1.put(3129594, "omar");
|
||||
t1.put(3129593, "abd");
|
||||
t1.put(3129393, "abd");
|
||||
t1.put(3129592, "abd");
|
||||
t1.put(3129392, "basel");
|
||||
t1.printAll();
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue