title: Parse double on string giving wrong result
body: <p>In my project I am getting a string values from an api and need to pass double values to another api. When I try to parse from string values to double I am not getting the original data.</p>
  
  <p>Here is the code.</p>
  
  <pre><code>String l1="11352721345377306";
  String l2="11352721346734307";
  String l3="11352721346734308";
  String l4="11352721346734309";
  
  DecimalFormat df = new DecimalFormat(".00");
  
  System.out.println(df.format(Double.parseDouble(l1)));
  System.out.println(df.format(Double.parseDouble(l2)));
  System.out.println(df.format(Double.parseDouble(l3)));  
  System.out.println(df.format(Double.parseDouble(l4)));
  </code></pre>
  
  <p>The output is </p>
  
  <pre><code>11352721345377306.00
  11352721346734308.00
  11352721346734308.00
  11352721346734308.00
  </code></pre>
  
  <p>What went wrong? Is there any problem with parsing? How can i get the original values back.?</p>
  
  <p><strong>Edit</strong>: Without using Decimal Format:</p>
  
  <pre><code>1.1352721345377306E16
  1.1352721346734308E16
  1.1352721346734308E16
  1.1352721346734308E16
  </code></pre>