两个list去重合并

问题描述:java 怎么把多个list 合并成一个去掉重复的 大家好,小编来为大家解答以下问题,合并两个list去除重复的元素,两个list去除重复对象,今天让我们一起来看看吧!

如何将两个List合并,且其中不允许出现重复的项

两个list去重合并的相关图片

示例代码:

    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]。

代码要典:

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

去重,借助LinkedHashSet 。

在python中如何将两个list合并成一个list,不用for语句的相关图片

在python中如何将两个list合并成一个list,不用for语句

public static void main(String args[]){。

    /**

      * 大体思路:

      * 1.把list2添加到list1中;添加时,先循环list2,用list2中的每个值,分别和。

      *  list1去比较,如果重复,跳出循环,则不添加,如果不重复,则list2的值添加到list1中。

      */

    List<Integer> list2=new ArrayList<Integer>();  。

     list2.add(1);  。

     list2.add(2);  。

     list2.add(4);  。

    

    List<Integer> list1=new ArrayList<Integer>();  。

     list1.add(1);  。

     list1.add(2);  。

     list1.add(5);  。

     

    temp = 0;//重复标识 0-该值在list1中唯一;1-该值在list1中有重复值。

    for(int i=0 ;i < list2.size();i++){。

        for(int j=0; j< list1.size(); j++){。

            if (list2.get(i) == list1.get(j)){。

                temp = 1;。

            }

        }

        if(temp = 0){。

            list1.add(list2.get(i));。

        }

    }  

    

    System.out.println(list1.size());。

后记:list1本身也需要去重,方法一样,自己去一下吧。

请教两个list数组的比较以及排序的相关图片

请教两个list数组的比较以及排序

1、运算符:

list1 = [1, 2, 3]。

list2 = [4, 5, 6]。

list3 = list1 + list2。

print(list3)

2、extend()方法:

list1 = [1, 2, 3]。

list2 = [4, 5, 6]。

list3 = list1.extend(list2)。

print(list3)

3、切片方式:

list1 = [1, 2, 3]。

list2 = [4, 5, 6]。

list1[len(list1):len(list1)] = list2。

print(list1)

扩展资料:

list的方法

L.append(var)  #追加元素。

L.insert(index,var)。

L.pop(var)   #返回最后一个元素,并从list中删除之。

L.remove(var)  #删除第一次出现的该元素。

L.count(var)  #该元素在列表中出现的个数。

L.index(var)  #该元素的位置,无则抛异常。

L.extend(list) #追加list,即合并list到L上。

L.sort()    #排序。

L.reverse()   #倒序。

list 操作符:,+,*,关键字del。

a[1:]    #片段操作符,用于子list的提取。

[1,2]+[3,4] #为[1,2,3,4]。同extend()。

[2]*4    #为[2,2,2,2]。

del L[1]  #删除指定下标的元素。

del L[1:3] #删除指定下标范围的元素。

两个对应不同类的list怎么合并为一个list,两个类有共同的id的相关图片

两个对应不同类的list怎么合并为一个list,两个类有共同的id

我这有种解法:

1、将list1和list2进行合并,在合并过程中去重。

2、用Collections.sort()进行排序就行了。代码如下:

List<Integer> list = new ArrayList<Integer>();。

for (Integer i : list2) {。

if (list.indexOf(i) == -1) {。

list.add(i);

for (Integer i : list1) {。

if (list.indexOf(i) == -1) {。

list.add(i);

Collections.sort(list);。

java 怎样合并两个list

新定义一个类,这个类包含两个已有类成员以及共有的Id。然后,遍历原有List集合查找Id匹配对象。找到后,生成新定义类的实例并放入合并List集合。

举例如下(C#):

// 原有类1

public class Class1。

    public int Id { get; set; }。

    //其余代码略……

// 原有类2

public class Class2。

    public int Id { get; set; }。

    //其余代码略……

// 定义一个类,包含Class1和Class2实例引用。

public class Compound。

    public int Id { get; set; }。

    pubiic Class1 C1 { get; set; }。

    pubiic Class2 C2 { get; set; }    。

合并两个不同类集合。合并操作使用了泛型列表List<T>和Linq。

using System.Collections.Generic;。

using System.Linq;。

// 原有类1列表集合

List<Class1> listClass1 = ……;。

// 原有类2列表集合

List<Class2> listClass2 = ……;。

// 合并

List<Compound> mergedList = new List<Compound>();。

// 遍历listClass1。

foreach(Class1 c1 listClass1)。

    // 从listClass2中查找Id匹配的对象。

    Class2 c2 = listClass2.Find(e=>e.Id == c1.Id);。

    if(c2 != null)。

    {

        //在listClass2中找到匹配的对象,添加到合并集合mergedList中。

        Compound x = new Compound(){Id=c1.Id, C1=c1, C2=c2};。

        mergedList.Add(x); 。

    }

// List<Compound> mergedList就是合并后的集合。

原文地址:http://www.qianchusai.com/%E4%B8%A4%E4%B8%AAlist%E5%8E%BB%E9%87%8D%E5%90%88%E5%B9%B6.html

psywar是哪两个单词,psywarrior由哪两个单词组成

psywar是哪两个单词,psywarrior由哪两个单词组成

中国移动魔百盒安装app,中国移动魔百盒安装与使用视频

中国移动魔百盒安装app,中国移动魔百盒安装与使用视频

微信途游五子棋残局破解11,微信途游五子棋残局破解第十四关

微信途游五子棋残局破解11,微信途游五子棋残局破解第十四关

6个字浪漫表白语句,6个字浪漫表白语句图片

6个字浪漫表白语句,6个字浪漫表白语句图片

有doi号后多久sci检索,只有doi号可以开检索报告吗

有doi号后多久sci检索,只有doi号可以开检索报告吗

宝宝两岁了还不会说话怎么办,宝宝两岁了还不会说话是什么原因呀

宝宝两岁了还不会说话怎么办,宝宝两岁了还不会说话是什么原因呀

知らぬ

知らぬ

neurocomputing审稿流程,neuroscience bulletin审稿流程

neurocomputing审稿流程,neuroscience bulletin审稿流程

v2ray配置ws和tls,v2ray 配置详解

v2ray配置ws和tls,v2ray 配置详解

lede软件中心,lede软件中心 正在连接服务器

lede软件中心,lede软件中心 正在连接服务器