Question

I would like a "symbol alphabet" to have a bi-directional map with weak/soft references. Something like an Apache's Common BidiMap (or Guava's BiMap) with a WeakMap-like interface.

A solution would be to use BiMap<WeakReference<K>,V> and once in a while clean-up entries, but it's not optimal. Any suggestions?

Was it helpful?

Solution

If you're up for building a custom implementation, almost certainly the right way to do it will be to build your own custom hash table and maintain a ReferenceQueue that's used to track removals.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top