Hola a todos, cómo están? espero que bien. En vista que no tuve ninguna respuesta o critica del código, comencé a desarrollar el código de LinkedHashMap casero, pero no estoy muy inspirado que digamos, no sé si estoy bien encaminado o no en el asunto.
Pongo el código:
Código Java:
Ver originalpackage linkedmapsimple;
import java.util.Map;
public class MyLinkedMap<K,V> extends MyMap<K,V>
{
private Entry<K,V>header;
private boolean accessOrder;
public MyLinkedMap() {
super();
accessOrder = false;
}
public MyLinkedMap(int xcap) {
super(xcap);
accessOrder = false;
}
public MyLinkedMap(Map<? extends K, ? extends V> m) {
super(m);
accessOrder = false;
}
@Override
public void clear() {
super.clear();
header.before = header.after = header;
}
@Override
public boolean containsValue
(Object value
) { // Overridden to take advantage of faster iterator
if (value==null) {
for (Entry e = header.after; e != header; e = e.after)
if (e.value==null)
return true;
} else {
for (Entry e = header.after; e != header; e = e.after)
if (value.equals(e.value))
return true;
}
return false;
}
private void addEntry(K key, V value){
}
class Entry<K,V> extends MyMap.Entry {
Entry<K,V> before;
Entry<K,V> after;
public Entry(K xkey, V xvalue) {
super(xkey, xvalue);
}
private void remove() {
before.after = after;
after.before = before;
}
private void addBefore(Entry<K,V> existingEntry) {
after = existingEntry;
before = existingEntry.before;
before.after = this;
after.before = this;
}
}
}
En especial con el addEntry teniendo en cuenta mi código del HashMap.
Código del HashMap Casero
Espero sus respuestas y Saludos.
PD: Para aclarar, no estoy en plan de "háganme el código" porque esa no es la idea para nada.