Hey
CalgaryCorpus gracias por responder, verás pude resolver mi problema, la función put me quedó de esta forma:
Código Java:
Ver original@Override
public V put(K key, V value) {
if(key == null){
return null;
} else {
if(size == table.length){
table
= Arrays.
copyOf(table, table.
length +1); }
int index = indexPut();
if (table[index] != null && table[index].getKey().equals(key)) {
V oldValue = table[index].getValue();
table[index].setValue(value);
return oldValue;
}
table[index] = new Entry(key, value);
size++;
return value;
}
}
Luego tuve otro problemilla más pero lo resolví que era el de las iteraciones:
Código Java:
Ver original@SuppressWarnings("empty-statement")
public Entry<K,V> nextEntry() {
currEntry = nextEntry;
index++;
// tuve que hacer este if para que no me diera error por el tema de los índices
if (index != size && table[index] != null) {
nextEntry = table[index];
} else {
nextEntry = null;
for (;index < table.length; index++){
if (table[index] != null){
nextEntry = table[index];
}
}
}
return currEntry;
}
}
Quería saber tu opinión porque en así están rebuscados tanto el put como el de las iteraciones.
Y de paso preguntarte: ¿si publico mi código completo con comentarios lo mirarías? es que quiero tener una opinión objetiva de la estructura y también pondría tu nombre cómo autor del código además del mío jeje....
Espero sus respuestas y Saludos.
PD1: Porque luego de esto quiero ver si con este código puedo hacer bien HashSet (de la misma forma que Oracle, xq ellos trabajan internamente con el HashMap para las funciones y los métodos de HashSet).
PD2: Estaba trasnochado cuando escribí el mensaje anterior.