I want to remove a List of elements Objects from list base on whatever is inside list2. I used removeAll(). Why does the list not remove those elements that are found in list2?
Element.java
public class Element {
private String element;
public Element() {
}
public Element(String element) {
setE(element);
}
public String getElement() {
return element;
}
public void setElement(String element) {
this.element = element;
}
}
RemoveAllTest.java
import java.util.ArrayList;
import java.util.List;
public class RemoveAllTest {
public RemoveAllTest() {
List<Element> list = new ArrayList<Element>();
List<Element> list2 = new ArrayList<Element>();
list.add(new Element("a"));
list.add(new Element("b"));
list.add(new Element("c"));
list2.add(new Element("a"));
list2.add(new Element("b"));
list.removeAll(list2);
for(int i = 0; i < list.size(); i++) {
System.out.println(list.get(i).getElement());
}
}
public static void main(String[] args) {
new RemoveAllTest();
}
}