boolean
retainall(collection<?> c);
在網上查到了 retainall方法
然後就在**中新增
listemployeeofintermediarys
= new arraylist();
listtemplist
= new arraylist();
//////
//
if(templist != null)
employeeofintermediarys.addall(templist);
}
然後發現不可以,查了好多東西,發現**是對的,只是需要重寫equals方法。
不知道為什麼,因為之前寫的小demo中用自定義的類book,如下,是可以正常使用的
public class book
/略
listbooks = new arraylist();
listtemplist = new arraylist();
book book1 = new book();
book1.setid(1);
book1.setnamestring("dkjdf");
book book2 = new book();
book2.setid(2);
book2.setnamestring("到加福祿壽");
book book3 = new book();
book3.setid(3);
book3.setnamestring("dj地方");
book book4 = new book();
book4.setid(4);
book4.setnamestring("dkjdf");
book book5 = new book();
book5.setid(5);
book5.setnamestring("到加福祿壽");
book book6 = new book();
book6.setid(6);
book6.setnamestring("dj地方");
books.add(book1);
books.add(book2);
books.add(book5);
books.add(null);
templist.add(book1);
templist.add(book4);
templist.add(null);
templist.retainall(books);
system.out.println(templist.get(0).booktostring());
whatever,準備找一找collection的源**看看,
重寫了employee中的equals方法後 。如下:
@override
public boolean equals(object c)
employee eoi = (employee) c;
if (eoi.getuserguid().equals(userguid))
return false;
}
上面的**就可以正常執行了。 ArrayList容器 去除重複元素
需求 1.將自定義物件作為元素存到arraylist集合中,並去除重複元素 比如存人的物件,同姓名同年齡,視為同乙個人,為重複元素 思路 1.對人建立乙個類,將資料封裝進建立的人物件裡 2.定義容器,存入容器裡 3.遍歷,查重,取出 list 集合判斷元素是否相同contains,用equals 而...
容器 ArrayList學習
陣列也是一種容器,但是容器更加靈活 更加強大,它的容量是隨時可擴的。set list繼承collection 實現set介面 hashset 實現list介面 arraylist linkedlist 實現map介面 hashmap。list是有序 可重複的容器 list介面的實現類有 arrayl...
ArrayList去除重複資料
arraylist元素去重是我們經常使用的功能,最容易想到的就是雙層for迴圈去重,這裡列舉出其他的兩種方式,如下 使用list的contains方法實現,如下 list list newarraylist list.add 序號 99990aa1 不符合規範 list.add 序號 99990aa...