title: Questions on hexadecimal-notation for primitive initialization
body: <p>I would like to initialize a <code>double</code> directly by using the hexadecimal-notation. I know this works for <code>int</code> and <code>Long</code> as shown in the following example (resulting values always right):</p>
  
  <pre><code>    int i   = 0x10000000;           // 268435456
      Long li = 0x1000000000000000L;  // 1152921504606846976
  </code></pre>
  
  <p>On the other hand, if I try do the same with doubles, it works but only in range of 4 Bytes (view comments in the code example). For the second, not valid notation the Netbeans IDE keeps telling me that is is an integer value and, thus, too large:</p>
  
  <pre><code>    double d1 = 0x10000000;         // 2.68435456E8
      double d2 = 0x1000000000000000; // not valid
  </code></pre>
  
  <p><code>float</code>-values work as well as they are in the range of 4 Bytes:</p>
  
  <pre><code>float f1 = 0x10000000;              // 2.68435456E8
  </code></pre>
  
  <hr>
  
  <ol>
  <li><strong>Is there a way to directly write/initialize a double with hexadecimal-notation?</strong></li>
  <li><strong>Is the only reason for being able to write a <code>Long</code> with hex-notation that there is no "L" in this notation</strong> (in contrast to "f" for float or the not valid "." for marking doubles)<strong>?</strong></li>
  <li><strong>Why is there a limitation to 4 Bytes? And why does it apply to <code>double</code> and not to <code>Long</code>?</strong></li>
  </ol>
  
  <p>Thank you for your advise and suggestions.</p>