title: Why it is possible to create collection of array of primitives but not collection of primitives
body: <p>Java does not support creating a collection out of primitives, so following construct gives compilation error ("The argument can not be of primitive type):</p>
  
  <pre><code> List&lt;int&gt; ints = new ArrayList&lt;int&gt;(); 
  </code></pre>
  
  <p>On the other hand creating a collection of arrays or primitives is allowed, so following construct is ok:</p>
  
  <pre><code>List&lt;int[]&gt; ints = new ArrayList&lt;int[]&gt;();
  </code></pre>
  
  <p>What is a logic behind this?</p>
  
  <hr>
  
  <p>Edit: The question is really about the array of primitives, not the primitives, so please don't explain me why can't I store primitives in collection, but rather why can I story array of primitives inside a collection?</p>