java中如何實現(xiàn)List集合去重?這篇文章運用了實例代碼展示,代碼非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

List集合在日常Java開發(fā)中是必不可少的,只要懂得運用各種各樣的方法就可以大大提高我們開發(fā)的效率,適當活用各種方法才會使我們開發(fā)事半功倍。但是,有時候難免會遇到集合里的數(shù)據(jù)是重復的,需要進行去除。
去重方式:
一、通過遍歷,然后用remove方法進行去掉重復的元素
public static List heavyListMethod04(List<Object> list){
for (int i=0;i<list.size()-1;i++){
Object o =list.get(i);
for (int j=i+1;j<list.size();j++){
if(o.equals(list.get(j))){
list.remove(j);
j--;
}
}
}
return list;
}二、通過set集合的特性,集合元素的唯一性
public static List heavyListMethod01(List list){
Set set=new HashSet(list);
//Set set1=new TreeSet(list);
List alist=new ArrayList();
for (Object o:set) {
alist.add(o);
}
return alist;
}利用set集合的特性,元素的唯一性 addAll(Collection c)
public static List heavyListMethod02(List list){
List newList=new ArrayList();
newList.addAll(new HashSet(list));
return newList;
}三、通過list的方法contains方法去重
public static List heavyListMethod03(List list){
List alist=new ArrayList();
for (Object o:list) {
if(!(alist.contains(o))){
alist.add(o);
}
}
return alist;
}四、(jdk1.8)調(diào)用stream方法將list轉(zhuǎn)換為流,通過distinct(內(nèi)部根據(jù)equals()方法)去掉流中重復的元素
public static List heavyListMethod05(List<Object> list){
list = list.stream().distinct().collect(Collectors.toList());
return list;
}測試驗證:
public static void main(String[] args) {
List list=new ArrayList();
list.add(1);
list.add(2);
list.add(5);
list.add(2);
list.add(3);
list.add(1);
list.add(4);
List list1 =heavyListMethod01(list);
System.out.println("1----"+list1);//[1, 2, 3, 4, 5]
List list2 =heavyListMethod02(list);
System.out.println("2----"+list2);//[1, 2, 3, 4, 5]
List list3 =heavyListMethod03(list);
System.out.println("3----"+list3);//[1, 2, 5, 3, 4]
List list4 =heavyListMethod04(list);
System.out.println("4----"+list4);//[1, 2, 5, 3, 4]
List list5 =heavyListMethod05(list);
System.out.println("5----"+list5);//[1, 2, 5, 3, 4]
}到此為止, 關(guān)于java中實現(xiàn)List集合去重的方法有了一個基礎(chǔ)的認識, 但是對于具體的使用方法還是需要多加鞏固和練習,如果想了解更多相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊。
網(wǎng)頁標題:java中如何實現(xiàn)List集合去重-創(chuàng)新互聯(lián)
URL地址:http://chinadenli.net/article12/hjsdc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、品牌網(wǎng)站建設(shè)、云服務器、Google、電子商務、營銷型網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容