title: Java - Is There Any Reason to Use This Format: (long) 0; Instead of This One: 0L;?
body: <p>I couldn't find any information about this when searching StackOverflow or Google, and I've got some coworkers who disagree with my preference for how to initialize a simple <code>Long</code> variable.</p>
  
  <p>Is there any reason to use one of these formats over the other?</p>
  
  <pre><code>Long foo = (long) 0; // First way of doing it
  Long bar = 0L; // Second way of doing it
  </code></pre>
  
  <p>I'm most interested if anyone knows if there is an efficiency difference here.</p>
  
  <p>The reason I prefer the second way is because you can specify values less than <code>Integer.MIN_VALUE</code> and greater than <code>Integer.MAX_VALUE</code>, whereas Eclipse would complain with something along the lines of "The literal 10000000000 of type int is out of range" if you used the first way here.</p>