DESCARGO DE RESPONSABILIDAD:
¡Esta pregunta no fue para ser discutida!¿La forma más rápida y eficiente de buscar un par clave-valor en Java?
¿Cuál es la forma más rápida y menos agotadora de buscar un par de clave-valor? Guardaré artículos en una relación clave-valor y necesito acceder a ellos rápidamente. ¿Debo usar una base de datos SQLite? ¿Un mapa? Un Hashtable? ¿Un HashMap? Proporcione algunas ventajas/desventajas de usar cualquier método de búsqueda.
¡HashTable NO está sincronizado y es más rápido que ConcurrentHashMap en entornos de un único subproceso si no tiene ningún bloqueo! Si el acceso al mapa es multiproceso, ConcurrentHashMap es realmente la mejor solución. –
@Tobias, "A diferencia de las nuevas implementaciones de colecciones, Hashtable está sincronizado" - de http://java.sun.com/j2se/1.5.0/docs/api/java/util/Hashtable.html –
Como estamos hablando sobre semántica ... "La implementación' ConcurrentHashMap' funciona mejor que 'HashMap' en casi todas las situaciones. También permite lecturas y escrituras concurrentes simultáneas, y tiene métodos que soportan operaciones compuestas comunes que de otro modo no son seguras para hilos. el entorno de despliegue, comience con 'ConcurrentHashMap'." * Código limpio: un manual de software ágil, Robert C. Martin, p.183 * – Esko