Gracias por responder
CalgaryCorpus, mira estoy probando de esta manera la estructura:
Código Java:
Ver originalpackage hashmapsimple;
public class Cuerpo
{
public static void main
(String[] args
) { MyMap
<Integer,String
>col
= new MyMap
(); col.put(1, "Deborah");
col.put(2, "Tommy");
col.put(3, "Franco");
col.put(4, "Manuela");
col.put(null,"pepe");
/*
java.util.HashMap<Integer, String> m = new java.util.HashMap();
m.put(5, "Miguel");
m.put(6, "Denisse");
col.putAll(m);
*/
System.
out.
println("con containsKey: " + col.
containsKey(1)); System.
out.
println("con containsKey: " + col.
containsKey(7)); System.
out.
println("con get: " + col.
get(1)); System.
out.
println("con get: " + col.
get(7)); System.
out.
println("con containsValue: " + col.
containsValue("Franco")); System.
out.
println("con containsValue: " + col.
containsValue("Rodrigo")); System.
out.
println("con containsValue: " + col.
containsValue(null)); //col.remove(2);
//col.remove(7);
//col.clear();
System.
out.
println("tamaño -> " + col.
size()); System.
out.
println(" --valores-- "); col.values().stream().forEach((s) -> {
});
System.
out.
println(" --claves-- "); col.keySet().stream().forEach((s) -> {
});
System.
out.
println(" --entradas-- "); col.entrySet().stream().forEach((e)->{
System.
out.
println("clave -> "+ e.
getKey() +" valor -> "+e.
getValue()); });
}
}
sin la resta me da esto por consola:
sólo el key.hashCode(): 1
esta expresión (key.hashCode() & 0x7FFFFFFF); 1
indice -> 1
sólo el key.hashCode(): 2
esta expresión (key.hashCode() & 0x7FFFFFFF): 2
indice -> 2
sólo el key.hashCode(): 3
esta expresión (key.hashCode() & 0x7FFFFFFF): 3
indice -> 3
sólo el key.hashCode(): 4
esta expresión (key.hashCode() & 0x7FFFFFFF): 4
indice -> 0
para ver internamente el getIndex() hice esto:
Código Java:
Ver originalprivate int getIndex
(Object key
) { System.
out.
println("sólo el key.hashCode(): " + key.
hashCode()); System.
out.
println("esta expresión (key.hashCode() & 0x7FFFFFFF): " + (key.
hashCode() & 0x7FFFFFFF
)); return (key.hashCode() & 0x7FFFFFFF) % table.length;
}
Prácticamente la función getIndex no funciona y ahí es dónde debo replantear el asunto.
Espero sus respuestas y saludos.