Java實(shí)現(xiàn)List去重的幾種方法總結(jié)
HashSet去重
import java.util.HashSet; HashSet<Integer> set = new HashSet<>(); set.add(1); set.add(2); set.add(2); System.out.println(set); // [1, 2]
TreeSet去重
import java.util.TreeSet; TreeSet<Integer> set = new TreeSet<>(); set.add(2); set.add(1); set.add(2); System.out.println(set); // [1, 2]
LinkedHashSet去重
import java.util.LinkedHashSet; LinkedHashSet<Integer> set = new LinkedHashSet<>(); set.add(2); set.add(1); set.add(2); System.out.println(set); // [2, 1]
迭代器去重
import java.util.ArrayList; import java.util.Iterator; ArrayList<Integer> list = new ArrayList<>(); list.add(1); list.add(2); list.add(2); Iterator<Integer> it = list.iterator(); while (it.hasNext()) { Integer i = it.next(); if (list.indexOf(i) != list.lastIndexOf(i)) { it.remove(); } } System.out.println(list); // [1]
Stream去重
import java.util.stream.Collectors; ArrayList<Integer> list = new ArrayList<>(); list.add(1); list.add(2); list.add(2); List<Integer> distinctList = list.stream() .distinct() .collect(Collectors.toList()); System.out.println(distinctList); // [1, 2]
contains去重
ArrayList<Integer> list = new ArrayList<>(); list.add(1); list.add(2); list.add(2); for (Integer i : list) { if (!list.contains(i)) { list.remove(i); } } System.out.println(list); // [1, 2]
寫在最后
到此這篇關(guān)于Java實(shí)現(xiàn)List去重的幾種方法總結(jié)的文章就介紹到這了,更多相關(guān)Java List去重內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SSH框架網(wǎng)上商城項(xiàng)目第30戰(zhàn)之項(xiàng)目總結(jié)(附源碼下載地址)
這篇文章主要介紹了SSH框架網(wǎng)上商城項(xiàng)目第30戰(zhàn)之項(xiàng)目總結(jié),并附源碼下載地址,感興趣的小伙伴們可以參考一下2016-06-06Java軟件生產(chǎn)監(jiān)控工具Btrace使用方法詳解
這篇文章主要介紹了Java軟件生產(chǎn)監(jiān)控工具Btrace使用方法詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07Java將CSV的數(shù)據(jù)發(fā)送到kafka的示例
這篇文章主要介紹了Java將CSV的數(shù)據(jù)發(fā)送到kafka得示例,幫助大家更好得理解和使用Java,感興趣的朋友可以了解下2020-11-11mybatis/mybatis-plus模糊查詢語句特殊字符轉(zhuǎn)義攔截器的實(shí)現(xiàn)
在開發(fā)中,我們通常會(huì)遇到這樣的情況。用戶在錄入信息是錄入了‘%’,而在查詢時(shí)無法精確匹配‘%’。究其原因,‘%’是MySQL的關(guān)鍵字,如果我們想要精確匹配‘%’,那么需要對(duì)其進(jìn)行轉(zhuǎn)義,本文就詳細(xì)的介紹一下2021-11-11java?jar包后臺(tái)運(yùn)行的兩種方式詳解
后臺(tái)運(yùn)行jar的方法有多種方法可以實(shí)現(xiàn)Java后臺(tái)運(yùn)行jar文件,下面介紹其中兩種常見的方法,下面這篇文章主要給大家介紹了關(guān)于java?jar包后臺(tái)運(yùn)行的兩種方式,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-07-07完美解決Eclipse 項(xiàng)目有紅感嘆號(hào)的問題
下面小編就為大家?guī)硪黄昝澜鉀QEclipse 項(xiàng)目有紅感嘆號(hào)的問題。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-01-01