title: Hashmap entry overwrites previous entry despite different key
body: <p>I'm running into issues with a Hashmap in my program overwriting the value of previous Hashmap entries despeinte the two entries having different keys. </p>
  
  <pre><code>    public void drawTheNumbers() {
      final int NO_WIN = 0;
      int playerOneTicketWinning = 0;
      Tuple numberTransporter = new Tuple (0,0);
      for(Journal entry : theJournal) {
          playerOneTicketWinning = entry.getWinning();
          if (winningsPerPlayer.containsKey(entry.getPerson())) {
              numberTransporter.playerTotalWinnings = numberTransporter.playerTotalWinnings + playerOneTicketWinning;
              numberTransporter.playerSimilarities = numberTransporter.playerSimilarities + entry.getSimilarities();
  
              winningsPerPlayer.put(entry.getPerson(), numberTransporter );
          }else {
              numberTransporter.playerTotalWinnings = playerOneTicketWinning;
              numberTransporter.playerSimilarities = entry.getSimilarities();
              winningsPerPlayer.put(entry.getPerson(), numberTransporter);
          }   
      }
      for (Map.Entry&lt;String, Tuple&gt; player: winningsPerPlayer.entrySet()) {
          int temp1 = numberTransporter.getplayerTotalWinnings();
          int temp2 = NO_WIN;
          if (temp1 == temp2) {
              noWinMessage (player.getKey());
          }else {
              playerWinningsMessage(player.getKey(), numberTransporter);
          }
      }
  }
  </code></pre>
  
  <p>When this loop is run the second time around it will overwrite the values of playerTotalWinnings and playerSimilarities in the method above, but also in the previously entry in the Hashmap created by winningsPerPlayer.put</p>
  
  <p>The key is the name of the player entered by the user when running the program. Multiple users can run the program within the same session. </p>