title: What is the point of the diamond operator (<>) in Java?
body: <p>The diamond operator in java 7 allows code like the following:</p>
  
  <pre><code>List&lt;String&gt; list = new LinkedList&lt;&gt;();
  </code></pre>
  
  <p>However in Java 5/6, I can simply write:</p>
  
  <pre><code>List&lt;String&gt; list = new LinkedList();
  </code></pre>
  
  <p>My understanding of type erasure is that these are exactly the same. (The generic gets removed at runtime anyway). </p>
  
  <p>Why bother with the diamond at all? What new functionality / type safety does it allow? If it doesn't yield any new functionality why do they mention it as a feature? Is my understanding of this concept flawed?</p>