title: Make GSON deserialize numbers to integers or doubles
body: <p>I am having a hard time with GSON.</p>
  
  <p>I have a simple JSON that I want to deserialize to a <code>Map&lt;String,Object&gt;</code>.</p>
  
  <p>It's really intuitive to me that 123 should be parsed as an int (or long), 123.4 as a float( or double).</p>
  
  <p>GSON on the other hand creates Doubles all the time.</p>
  
  <p>Can I tell GSON to not abuse double all the time?</p>
  
  <p>My actual code:</p>
  
  <pre><code>Type mapType = new TypeToken&lt;Map&lt;String, Object&gt;&gt;() {}.getType();
  GSON gson = new Gson();
  Map&lt;String, Object&gt; map = gson.fromJson(someString, mapType);
  </code></pre>