title: Multiple keys pointing/refering to same Object in values in HashMap
body: <p>I have a HashMap , which has a Object (with 2 String objects as member variables of it) and value as Object containing 3 different Strings.</p>
  
  <p>Say: </p>
  
  <pre><code>Map&lt;ReqDTO , RespDTO&gt; map = new HashMap&lt;ReqDTO ,RespDTO&gt; ();
  </code></pre>
  
  <p>suppose I have following values :</p>
  
  <pre>
      KEY             VALUE
  1 ("str1","1") -  ("1","2","3")
  2 ("str2","2") -  ("a","b","c")
  3 ("str3","3") -  ("1","2","3")
  4 ("str4","4") -  ("v","b","g")
  5 ("str5","5") -  ("1","2","3")
  </pre>
  
  <p>When I have thousands of such records , (which is Cache in my application) , then VALUE part of record number : 1,3,5 is holding memory of 3 objects. I want to make KEYS of 1,3,5 records to point to same instance of the VALUES (1,2,3 , in this case) and not as separate memory.</p>
  
  <p>Is there any variant in HashMap for the same? or Any other Datastructure will do..</p>
  
  <p><em>NOTE</em>: It is loaded only once and all the operations performed on this are READ only..
  What should be the preference of datastructure to make it performance intensive ,In other words, It can have costly insertion.</p>