title: Java List interface contains(Object o) method signature
body: <blockquote>
    <p><strong>Possible Duplicate:</strong><br>
    <a href="https://stackoverflow.com/questions/104799/why-arent-java-collections-remove-methods-generic">Why aren’t Java Collections remove methods generic?</a>  </p>
  </blockquote>
  
  
  
  <p>The Java <code>Collection&lt;E&gt;</code> interface has a <code>contains</code> method with the following signature:</p>
  
  <pre><code>boolean contains(Object o)
  </code></pre>
  
  <p>Since the interface is generic with type <code>E</code> shouldn't the signature be<br>
  <code>boolean contains(E o)</code> </p>
  
  <p>to reflect that and only allow arguments of type <code>E</code>.</p>
  
  <p>The same question can be asked regarding the <code>remove(Object o)</code> method</p>