Hay public static class AbstractMap.SimpleEntry<K,V>. No permita que la Abstractparte del nombre lo engañe: de hecho, NO es una abstractclase (pero su nivel superior sí lo AbstractMapes).
El hecho de que sea una staticclase anidada significa que NO necesita una AbstractMapinstancia de cierre para crear una instancia, por lo que algo como esto se compila bien:
Map.Entry<String,Integer> entry =
new AbstractMap.SimpleEntry<String, Integer>("exmpleString", 42);
Como se señaló en otra respuesta, Guava también tiene un staticmétodo de fábrica conveniente Maps.immutableEntryque puede usar.
Tu dijiste:
No puedo usarlo Map.Entryporque aparentemente es un objeto de solo lectura del que no puedo crear instancias nuevasinstanceof
Eso no es del todo exacto. La razón por la que no puede crear una instancia directamente (es decir, con new) es porque es un interface Map.Entry.
Advertencia y propina
Como se señala en la documentación, AbstractMap.SimpleEntryes decir @since 1.6, si está atascado en 5.0, entonces no está disponible para usted.
Para buscar otra clase conocida que implements Map.Entry, de hecho, puede ir directamente al javadoc. Desde la versión Java 6
Mapa de interfaz.
Todas las clases de implementación conocidas :
Lamentablemente, la versión 1.5 no enumera ninguna clase de implementación conocida que pueda usar, por lo que es posible que no haya implementado la suya propia.