av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

如何去除Java中List集合中的重復數據

瀏覽:24日期:2022-09-01 08:28:43

1.循環list中的所有元素然后刪除重復

public class duplicatRemoval {public static List removeDuplicate(List list){for(int i=0;i<list. size()-1;i++){for(int j=list.size()-1;j>i;j--){if(list. get(j). equals(list.get(i))){list.remove(j);}}}return list;}}

總結:

兩層循環,外層循環從第一個元素向最后一個元素循環,內層循環是從最后一個元素向外層循環元素的當前元素循環。比較兩個元素是否相等,如果相等,移除靠后的元素來進行去重。這種方法時間復雜度大于O(n),小于O(N²)

2.通過HashSet剔除重復元素

public class duplicatRemoval {public static List removeDuplicate(List list) {HashSet hashSet = new HashSet(list) ;list.clear();list.addAll(hashSet);return list;}}

總結:

此種方式是利用了Set的特性:元素不可重復,其底層原理是先計算每個對象的hash值,再比較元素值是否相同,如果相同,則保留最新的。

3.刪除ArrayList中重復元素,保持順序

public class duplicatRemoval {public static void removeDuplicateWithOrder(List list) {Set set = new HashSet( );List newList = new ArrayList();for (Iterator iter = list. iterator(); iter. hasNext();) {0bject element= iter.next( );if (set. add( element) )newList.add( element);}list.clear();list.addAll(newList);System. out. println(”remove duplicate'+ list);}}

4.把list里的對象遍歷一遍,用list.contain(),如果不存在就放入到另外一個list集合中

public class duplicatRemoval {public static List removeDuplicate(List list){List listTemp = new ArrayList();for(int i=0;i<list. size();i++){if( !listTemp . contains(list.get(i))){listTemp. add(list.get(i));}return listTemp;}

5.用JDK1.8 Stream中對List進行去重:list.stream().distinct();

public class duplicatRemoval {public static void main(String[] args) {List<Integer> list = new ArrayList<>( 1000000) ;for(inti=0;i<10;i++){list. add(1);System . out. println(list);List shortList = removeDuplicate(list);System . out . println( shortList);}@Suppres sWarnings( 'rawtypes' )public static List removeDuplicate(List list){List newList = (List) list. stream(). distinct( ).collect(Collectors. toList());return newList ;

如何去除Java中List集合中的重復數據

首先獲得此list的Stream,然后調用distinct()方法。Java8中提供流的方式對數據進行處理,非常快,底層用的是forkJoin框架,提供了并行處理,使得多個處理器同時處理流中的數據,所以耗時非常短。

到此這篇關于如何去除Java中List集合中的重復數據的文章就介紹到這了,更多相關Java List集合內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Java
相關文章:
主站蜘蛛池模板: 在线播放h| 99香蕉视频 | 欧美区一区二 | 国产视频一区在线 | 国产视频黄色 | 中文字幕亚洲天堂 | 欧美一级片在线 | 亚洲国产精 | 精品精品| 欧美日韩小视频 | 黄色大片av| 日韩aaaa| 欧美日韩在线精品 | 国产中文字幕在线播放 | 日韩在线精品 | 手机看片日韩 | 极品美女一区二区三区 | 97福利视频 | 免费黄色片视频 | 亚洲最大黄色网址 | 黄色三级av | www.欧美日韩| 青青久久 | 日本一级片在线观看 | 激情做爰呻吟视频舌吻 | 亚洲国产成人精品久久 | 亚洲欧美一区二区三区在线 | 黄色小视频免费看 | 中文字幕综合网 | 国产精品免费在线播放 | 免费观看av| 日日干夜夜草 | 精品免费在线观看 | 久久久久久久免费视频 | 九九精品免费视频 | 久久久久久免费 | 黄色片中文字幕 | 久久婷婷网 | 久久综合久久鬼 | 中文字幕一区二区在线播放 | 国产不卡视频在线观看 |