title: Kotlin's List missing "add", "remove", Map missing "put", etc?
body: <p>In Java we could do the following</p>
  
  <pre><code>public class TempClass {
      List&lt;Integer&gt; myList = null;
      void doSomething() {
          myList = new ArrayList&lt;&gt;();
          myList.add(10);
          myList.remove(10);
      }
  }
  </code></pre>
  
  <p>But if we rewrite it to Kotlin directly as below</p>
  
  <pre><code>class TempClass {
      var myList: List&lt;Int&gt;? = null
      fun doSomething() {
          myList = ArrayList&lt;Int&gt;()
          myList!!.add(10)
          myList!!.remove(10)
      }
  }
  </code></pre>
  
  <p>I got the error of not finding <code>add</code> and <code>remove</code> function from my List</p>
  
  <p>I work around casting it to ArrayList, but that is odd needing to cast it, while in Java casting is not required. And that defeats the purpose of having the abstract class List</p>
  
  <pre><code>class TempClass {
      var myList: List&lt;Int&gt;? = null
      fun doSomething() {
          myList = ArrayList&lt;Int&gt;()
          (myList!! as ArrayList).add(10)
          (myList!! as ArrayList).remove(10)
      }
  }
  </code></pre>
  
  <p>Is there a way for me to use List but not needing to cast it, like what could be done in Java?</p>