I'm looking at various google-collections (or also Apache commons collections) classes, and I'd fancy some help in finding the most appropriate Map implementation for my use case. I'm not interested in home-grown maps.
Here are some requirements:
Map<String, List<String>>
data structure (A)Map<String, String>
read-only view (B).B.get(X) == A.get(X).get(A.get(X).size() - 1)
I know ArrayListMultimap
, but it doesn't expose a view satisfying my requirements for (B).
Any pointers?
I suspect you just want Maps.transformValues
from Guava:
Map<String, String> lastValueView = Maps.transformValues(originalMap,
new Function<List<String>, String>() {
@Override
public String apply(List<String> input) {
return input.get(input.size() - 1);
}
});