title: Map: How to get all keys associated with a value?
body: <p>Given a Map, how do I look up all keys associated with a particular value?</p>
  
  <p>For example:</p>
  
  <pre><code>Map&lt;Integer, Integer&gt; map = new HashMap&lt;Integer, Integer&gt;();
  map.put(1, 5);
  map.put(2, 2);
  map.put(3, 5);
  Collection&lt;Integer&gt; keys = map.values(5); // should return {1, 3}
  </code></pre>
  
  <p>I'm looking for something similar to Google Collections' <a href="http://google-collections.googlecode.com/svn/trunk/javadoc/com/google/common/collect/BiMap.html" rel="noreferrer">BiMap</a> where values are not unique.</p>