java中集合set去重使用

2021-07-14 14:18:07 字數 2053 閱讀 1006

第一種,list, list用set去重時,無需重寫equals方法

listlist = new arraylist();

for (int i = 0 ; i < 10 ; i++ )

list.add(3);

list.add(5);

for (int m = 0 ; m < list.size() ; m++  )

setset = new hashset();

for(int j = 0 ; j < list.size() ; j++ )

//第一種:用iterator遍歷

iteratorit = set.iterator();  

while (it.hasnext())  

//第二種:for迴圈遍歷:  

for (integer str : set)  

達到去重了效果

第二種,當是物件時,即list去重時,必須所有屬性的值相同,必須在實體中重寫equals以及hashcode方法

//物件列表

listperlist = new arraylist();

//建立各種物件,初始化資料

person p1 = new person();

p1.setid(1);

p1.setname("zhang");

p1.setage(22);

perlist.add(p1);

person p2 = new person();

p2.setid(2);

p2.setname("san");

p2.setage(22);

perlist.add(p2);

person p3 = new person();

p3.setid(3);

p3.setname("zhangsan");

p3.setage(22);

perlist.add(p3);

person p4 = new person();

p4.setid(4);

p4.setname("zs");

p4.setage(22);

perlist.add(p4);

person p5 = new person();

p5.setid(5);

p5.setname("zhangs");

p5.setage(22);

perlist.add(p5);

person p6 = new person();

p6.setid(1);

p6.setname("zhang");

p6.setage(22);

perlist.add(p6);

setpset = new hashset();

for(person pe : perlist)

for (person p : pset)

/*** 輸出結果

*///

list遍歷輸出:person [id=1, age=22, name=zhang]

//list遍歷輸出:person [id=2, age=22, name=san]

//list遍歷輸出:person [id=3, age=22, name=zhangsan]

//list遍歷輸出:person [id=4, age=22, name=zs]

//list遍歷輸出:person [id=5, age=22, name=zhangs]

//list遍歷輸出:person [id=1, age=22, name=zhang]

//轉換成set後:person [id=5, age=22, name=zhangs]

//轉換成set後:person [id=4, age=22, name=zs]

//轉換成set後:person [id=1, age=22, name=zhang]

//轉換成set後:person [id=3, age=22, name=zhangsan]

//轉換成set後:person [id=2, age=22, name=san]

同樣達到了去重效果

List集合去重以及集合set使用分析!

private static void removeduplicate listlist 使用linkedhashset實現list集合去重 這裡有個地方要注意,add操作是新增元素的引用,那麼這意味著如果你改變了該元素,list中對應的元素也被改變了 而addall操作則是拷貝,當你改變元素,li...

Set集合 去重和比較方法

set集合 特點 無序 沒有下標 集合中的元素不重複 hashset hashset具有去重功能 例 建立乙個hashset 儲存 f f a a b b d d hashsetset new hashset set.add f set.add f set.add a set.add a set.a...

Python中集合(set)型別

python的set和其他語言類似,是乙個無序不重複元素集,基本功能包括關係測試和消除重複元素.集合物件還支援union 聯合 intersection 交 difference 差 和sysmmetric difference 對稱差集 等數 算.sets 支援 x in set,len set ...