Tengo un LinkedHashMap. Quiero conseguir el Foo en el índice N. ¿Hay una mejor manera de hacer esto, además de la iteración hasta que lo encuentre ?:¿Deseas encontrar una entrada de Mapa en un índice?
int target = N;
int index = 0;
for (Map.Entry<String, Foo> it : foos.entrySet()) {
if (index == target) {
return it.getValue();
}
index++;
}
que tengo que hacer llegar los elementos al azar del mapa por un índice de cerca de 50 veces alguna operación. El mapa tendrá alrededor de 20 elementos.
Gracias
Usted ha pasado O (N) creando una copia de todas las claves en el mapa. Si se inserta algo en el mapa, su copia no se actualizará. * Solo es O (1) para consultas sucesivas después de la copia inicial *. – tucuxi