集合去掉重複元素
1、字串去重
public
static
void
main
(string[
] args)
for(string s : set)
}
2、物件去重
package com.myproj.pojo;
public
class
people
public
void
setname
(string name)
public
intgetage()
public
void
setage
(int age)
public string get***()
public
void
set***
(string ***)
public
people()
public
people
(string name,
int age, string ***)
@override
public string tostring()
//重寫hashcode和equals方法
@override
public
inthashcode()
@override
public
boolean
equals
(object obj)
elseif(
!name.
equals
(other.name)
)return
false;if
(*** == null)
elseif(
!***.
equals
(other.***)
)return
false
;return
true;}
}
public
static
void
main
(string[
] args)
system.out.
println
("***************新增到set集合之前list中的people******************");
setset =
newhashset
();for
(people people : list)
system.out.
println
("***************新增到set集合之後******************");
for(people people : set)
}
//注意一定要在實體類中重寫hashcode方法和equals方法set方法才會達到去重的效果,
在這裡要注意的是:list是有序可重複的集合,而set是無序且不可以存重複元素的集合,但是對於物件來說,區分是否為同乙個物件,要注意它的hashcode。
3.對於有主鍵的物件來說,去重時,可以根據主鍵是唯一的特點去重。
List集合去重
第一種 list每remove掉乙個元素以後,後面的元素都會向前移動,此時如果執行i i 1,則剛剛移過來的元素沒有被讀取。string str1 newstring abcde1 string str2 newstring abcde2 string str3 newstring abcde3 s...
List集合去重
首先,我們都知道list集合是乙個儲存有序可重複元素的容器,那麼如果要對乙個list去重有哪些方法呢?方式一 迴圈list中的所有元素然後刪除重複 public static list removeduplicate list list return list public static list ...
如何對list集合物件去重
我們知道,list集合是乙個元素有序,可重複的集合,集合中每個元素都有對應的順序索引,我們通過索引進行取值賦值 那麼,當list集合中的元素為多個屬性組成的物件時,如何對list集合進行去重 因為物件是在記憶體中開闢一塊區域進行儲存,每個物件的值哪怕相同,但只要是你新new出來的,代表的也是不同的物...