Uso de pares o 2-tuplas en Java
Mi Hashtable en Java se beneficiaría de que un valor tuviera una estructura de tupla. ¿Qué estructura de datos puedo utilizar en Java para hacerlo?
Hashtable<Long, Tuple<Set<Long>,Set<Long>>> table = ...
290
3
No creo que haya una clase tupla de propósito general en Java, pero una personalizada podría ser tan fácil como la siguiente:
Por supuesto, hay algunas implicaciones importantes de cómo diseñar esta clase con respecto a la igualdad, la inmutabilidad, etc, especialmente si usted planea usar las instancias como claves para el hash.
Aquí's esta misma pregunta en otro lugar, que incluye una más robusta
equals
,hash
que maerics alude:http://groups.google.com/group/comp.lang.java.help/browse_thread/thread/f8b63fc645c1b487/1d94be050cfc249b
Esa discusión pasa a reflejar los enfoques de maerics vs ColinD de "debo reutilizar una clase Tuple con un nombre inespecífico, o hacer una nueva clase con nombres específicos cada vez que me encuentro con esta situación". Hace años yo estaba en el segundo campo; I'he evolucionado en el apoyo a la primera.
Cree una clase que describa el concepto que está modelando y utilícela. Puede simplemente almacenar dos
Set
y proporcionar los accesores para ellos, pero debe ser nombrado para indicar qué es exactamente cada uno de esos conjuntos y por qué están agrupados.