title: How do I initialize an Optional<List<T>>?
body: <p>It's fairly simple. I have a field for a list that may or may not be present (but that must be different from <code>null</code> as non-initialized), but while I can do</p>
  
  <pre><code>List&lt;String&gt; mylist = new ArrayList&lt;&gt;();
  </code></pre>
  
  <p>I cannot do</p>
  
  <pre><code>Optional&lt;List&lt;String&gt;&gt; mylist = Optional.of(new ArrayList&lt;String&gt;());
  </code></pre>
  
  <p>because the types don't match. This is unfortunate. I would not like to hard-wire my code to use ArrayList.</p>
  
  <p>Is there a way around this?</p>