Guava has a thing called BiMap to make dealing with these two way maps a little cleaner.  OTOH the implementation of it we'd use here is based on two hash tables any way.