国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

java 實(shí)現(xiàn)多個(gè)list 合并成一個(gè)去掉重復(fù)的案例

瀏覽:2日期:2022-08-26 09:18:06

我就廢話不多說(shuō)了,大家還是直接看代碼吧~

public static void main(String[] args){ List<Integer> list1 = new ArrayList<Integer>(); list1.add(1); list1.add(2); list1.add(3); list1.add(4); List<Integer> list2 = new ArrayList<Integer>(); list2.add(1); list2.add(4); list2.add(7); list2.add(10); List<Integer> listAll = new ArrayList<Integer>(); listAll.addAll(list1); listAll.addAll(list2); listAll = new ArrayList<Integer>(new LinkedHashSet<>(listAll)); System.out.println(listAll); }

輸出:

[1, 2, 3, 4, 7, 10]

代碼要典:

1、合并 使用java.util.List.addAll(Collection<? extends Integer>)

2、去重,借助LinkedHashSet

補(bǔ)充知識(shí):java8 lambda小試牛刀,利用Stream把list轉(zhuǎn)map,并將兩個(gè)list的數(shù)據(jù)對(duì)象合并起來(lái)

我就廢話不多說(shuō)了,大家還是直接看代碼吧~

public static void main(String[] args) {// 集合1List<SkillUpgrade> lists = new ArrayList<>();SkillUpgrade s = new SkillUpgrade();s.setLv(1);s.setAppearNum(100);lists.add(s);SkillUpgrade s2 = new SkillUpgrade();s2.setLv(2);s2.setAppearNum(200);lists.add(s2);// 集合1List<SkillUpgrade> listx = new ArrayList<>();SkillUpgrade x = new SkillUpgrade();x.setLv(1);x.setSelectNum(1100);listx.add(x);SkillUpgrade x2 = new SkillUpgrade();x2.setLv(2);x2.setSelectNum(1200);listx.add(x2);// 把list轉(zhuǎn)map,{k=lv,vaule=并為自身} . SkillUpgrade->SkillUpgrade或Function.identity()Map<Integer, SkillUpgrade> map = listx.stream().collect(Collectors.toMap(SkillUpgrade::getLv, SkillUpgrade -> SkillUpgrade));System.out.println('map:='+map);// 合并lists.forEach(n -> {// 如果等級(jí)一致if (map.containsKey(n.getLv())) {SkillUpgrade obj = map.get(n.getLv());// 把數(shù)量復(fù)制過(guò)去n.setSelectNum(obj.getSelectNum());}});System.out.println('lists:='+lists);// 重復(fù)問(wèn)題Map<Integer, SkillUpgrade> keyRedo = listx.stream().collect(Collectors.toMap(SkillUpgrade::getLv, Function.identity(), (key1, key2) -> key2));// 方式二:指定實(shí)例的mapMap<Integer, SkillUpgrade> linkedHashMap = listx.stream().collect(Collectors.toMap(SkillUpgrade::getLv,SkillUpgrade -> SkillUpgrade, (key1, key2) -> key2, LinkedHashMap::new));}/** * output:map:={1=SkillUpgrade [skillId=null, skillName=null, lv=1, persNum=null, selectNum=1100, appearNum=null], 2=SkillUpgrade [skillId=null, skillName=null, lv=2, persNum=null, selectNum=1200, appearNum=null]} * lists:=[SkillUpgrade [skillId=null, skillName=null, lv=1, persNum=null, selectNum=1100, appearNum=100], SkillUpgrade [skillId=null, skillName=null, lv=2, persNum=null, selectNum=1200, appearNum=200]] */

輸出結(jié)果:

map:={1=SkillUpgrade [skillId=null, skillName=null, lv=1, persNum=null, selectNum=1100, appearNum=null], 2=SkillUpgrade [skillId=null, skillName=null, lv=2, persNum=null, selectNum=1200, appearNum=null]}

lists:=[SkillUpgrade [skillId=null, skillName=null, lv=1, persNum=null, selectNum=1100, appearNum=100], SkillUpgrade [skillId=null, skillName=null, lv=2, persNum=null, selectNum=1200, appearNum=200]]

以上這篇java 實(shí)現(xiàn)多個(gè)list 合并成一個(gè)去掉重復(fù)的案例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 美女视频在线观看黄 | 日韩在线视频线视频免费网站 | 成年人在线观看网站 | 国产高中生粉嫩无套第一次 | 高清一级片 | 亚洲国产成人久久一区久久 | 成人三级在线播放线观看 | 拍真实国产伦偷精品 | 欧美日韩视频在线第一区二区三区 | 91香蕉国产线在线观看免费 | 欧美一级情欲片在线 | 亚洲欧美二区三区久本道 | 亚洲碰碰 | 欧美一级免费观看 | 久久久久99精品成人片三人毛片 | 日韩精品免费看 | 中文字幕在线观看不卡视频 | 国产三片高清在线观看 | 亚洲天堂视频网 | 花蝴蝶在线 | 欧美日韩高清在线观看一区二区 | xxxx欧美视频| 97久久精品视频 | 国产视频久久久久 | 欧美日韩在线观看一区二区 | 久久九九精品一区二区 | 亚洲日本一区二区三区高清在线 | 亚洲欧美精品中文字幕 | 亚洲精品在线播放 | 日韩伦理一区二区三区 | 久久综合精品国产一区二区三区无 | 精品国产午夜肉伦伦影院 | 国产高清一 | 色婷婷久久综合中文久久蜜桃 | 欧美性毛片大片 | 欧美一级毛片免费高清的 | 国产精品久久久久久久久免费 | 亚洲人成片在线观看 | 久久久这里只有精品免费 | 国产自在自线午夜精品视频在 | 免费国产黄 |