Me gustaría tener un objeto que implemente las interfaces Map y List en Java. La idea es similar al problema en esta pregunta: Java Ordered MapImplementa las interfaces de Mapa y Lista en Java?
Quiero añadir pares de nombre/valor a una lista y tener la lista de preservar la secuencia, sino también ser capaz de hacer búsquedas por nombre:
foo.put("name0", "value0");
foo.put("name1", "value1");
foo.get(1); --> Map.Entry("name1", "value1")
foo.get("name0"); --> "value0"
aquí está el problema: cuando se crea esta clase:
class Foo implements Map, List {
// add all methods here
}
me sale un error de compilación:
"The return type is incompatible with Map.remove(Object)"
public boolean remove(Object o) {
return false;
}
Si no implemento las interfaces de Mapa y Lista, existen muchos métodos de recolección de Java que no están disponibles para usar en esta estructura de datos.
(También, la razón por la que la solución propuesta en Java Ordenado mapa anterior no funciona es que LinkedHashMap no tiene un método get (int). No se puede seleccionar las entradas de índice.)
¿Está en contra de extender el 'LinkedHashMap', si no, ¿por qué no intenta agregar el método' get (int) 'a él? –
http://www.java.net/forum/topic/jdk/java-se/implementing-both-map-and-list-impossible-0 – Adam
@ Adam ese enlace está roto, pero supongo que sabremos qué dice, solo de la URL;) – MatrixFrog