`

获取两个List的不同元素

    博客分类:
  • Java
阅读更多
    /**
     * 获取两个List的不同元素
     * 
     * @param list1
     * @param list2
     * @return
     */
    private static List<String> getDiffrent4(List<String> list1, List<String> list2)
    {

        long st = System.nanoTime();

        Map<String, Integer> map = new HashMap<String, Integer>(list1.size() + list2.size());
        List<String> diff = new ArrayList<String>();

        List<String> maxList = list1;
        List<String> minList = list2;

        if (list2.size() > list1.size())
        {
            maxList = list2;
            minList = list1;
        }

        for (String string : maxList)
        {
            map.put(string, 1);
        }

        for (String string : minList)
        {
            Integer cc = map.get(string);
            if (cc != null)
            {
                map.put(string, ++cc);
                continue;
            }

            map.put(string, 1);
        }

        for (Map.Entry<String, Integer> entry : map.entrySet())
        {
            if (entry.getValue() == 1)
            {
                diff.add(entry.getKey());
            }
        }

        System.out.println("getDiffrent4 total times " + (System.nanoTime() - st));

        return diff;

    }

 

分享到:
评论

相关推荐

    java获取list中两元素时间差

    时间差异是通过计算两个时间字段之间的秒数差异来实现的。 Java 代码实现 下面是 Java 代码实现的详细解释: ```java public static List&lt;GetResponse&gt; timeList(List list) { List&lt;GetResponse&gt; demoMapList = ...

    两个list比较 取不同的对象

    ### 两个List比较取不同的对象 在Java编程中,经常需要对两个`List`进行比较,找出它们之间的差异。这通常涉及到数据结构的理解、算法设计以及编程实现等多个方面。本文将详细探讨如何通过一个示例代码来理解如何...

    获取两个数组相同的元素或不同的元素输出

    本篇文章将深入探讨如何在Java中获取两个数组的相同元素和不同元素。 首先,我们可以使用Java的内置函数`equals()`来比较两个数组是否完全相等。`equals()`方法会检查两个数组的引用是否指向同一个对象,以及两个...

    比较两个集合是否相同(比较两个List内容是否相同)

    比较两个集合是否相同(比较两个List内容是否相同) 利用Java反射机制,获取到字段名、方法名、字段值,进行逐个比较,此处本人封装好了工具类,接收的是泛型,调用者只需要传入两个实体List即可进行比较,返回true...

    两个集合比较(新增、编辑、删除)

    在两个List中找到相同的元素,但它们的值不同。这需要我们遍历两个List,比较每个元素的值。我们可以创建一个辅助函数来检查元素是否被编辑: ```java public boolean isElementEdited(Object oldElement, Object ...

    QT 利用两种方式实现两个list中元素的互相移动

    在QT编程中,实现两个list之间元素的交互是常见的需求,这可以提升用户界面的交互性和易用性。本文将详细介绍如何利用QT库中的功能,通过按键操作和鼠标拖拽来实现在两个list中元素的互相移动。 首先,我们要了解QT...

    数组,List 重复元素统计数量,找出唯一的元素

    两种不同方式(使用map和list两种方式)获得一下输出结果 数组和list 可以使用相同的方法,自己测试可以 控制台输出 1出现的次数:2 2出现的次数:2 3出现的次数:2 4出现的次数:3 5出现的次数:1 数组中唯一的元素是:...

    基于java8新特性+反射机制实现list不同实体类互转.zip

    例如,如果源实体类有一个`name`字段,目标实体类也有一个`name`字段,我们可以通过反射找到这两个字段并进行赋值。 在实现过程中,我们可以创建一个工具类,如`ListConvertUtil`,并在其中定义静态方法,如`...

    std::List类的遍历获得元素的操作二法

    以下是两种遍历`std::list`并获取其元素的方法。 ### 方法一:迭代器遍历 在C++中,迭代器是访问容器内元素的指针类似对象。对于`std::list`,我们可以使用`iterator`类型来遍历所有元素。以下是一个例子: ```...

    两个List集合取相同重复数据的方法

    最后,我们可以使用getRepetition()方法来获取两个List集合的交集。 ```java System.out.println("List1的数据:" + list1); System.out.println("List2的数据:" + list2); System.out.println("交集为" + ...

    C#Linq获取两个List或数组的差集交集.pdf

    假设我们有两个 List 集合,m_ilAllSelect 代表新选择的列表,m_mcuids 代表旧选择的列表,那么我们可以使用以下代码来获取要处理的集合元素: ```csharp List&lt;int&gt; m_ilNewSelect = m_ilAllSelect.ToList(); List...

    Java提取2个集合中的相同和不同元素代码示例

    今天,我们将讨论如何使用Java从两个集合中提取相同和不同元素的代码示例。 首先,让我们了解一下Java集合框架中提供的removeAll方法。removeAll方法用于从列表中移除指定collection中包含的所有元素。其语法为:`...

    Python实现两个list对应元素相减操作示例

    ### Python 实现两个 List 对应元素相减操作详解 在 Python 编程中,处理列表(List)是非常常见的需求之一。本文将详细介绍如何实现两个列表(list)的对应元素相减操作,并通过具体的实例来分析其实现技巧。 #### 一...

    两个对象互相交换位置

    2. **获取几何信息**:选定对象后,软件会获取这两个对象的几何信息,包括它们的坐标或者边界点。 3. **坐标交换**:然后,软件会交换这两个对象的坐标值。对于点对象,就是直接交换它们的X和Y坐标;对于线和面对象...

    【Robotframework】列表List的常用操作.pdf

    例如,`Lists Should Be Equal ${list} ${list1}` 判断两个列表是否相同。 8. **Remove From List**: 根据索引移除列表中的元素。例如,`Remove From List ${list} 0` 移除列表的第一个元素。 9. **Remove Values ...

    c# list部分操作实现代码

    C# Linq获取两个List或数组的差集交集 代码如下:List&lt;int&gt; list1 = newList();list1.Add(1);list1.Add(2);list1.Add(3);List&lt;int&gt; list2 = newList();list2.Add(3);list2.Add(4);list2.Add(5);//得到的结果是4,5 即...

    c#多个结构类型相同的list 组合

    这里涉及到两个列表:`qkmxList`和`qkxyList`,以及一个最终的组合列表`qkmxListAll`。`qkxyList`从数据库获取数据,然后根据`fxrq`(发行日期)字段的值进行处理,通过`switch`语句将数据添加到`qkmxListAll`。 `...

    设计一个函数返回传入的列表中最大和第二大的元素的值。

    3. 列表中有重复的最大值:我们需要确保返回的是不同的两个元素。 4. 输入的不是列表,或者列表中包含非数字元素:函数应能处理这些异常情况。 接下来,我们编写一个名为`find_top_two_elements`的函数,它接受一个...

    Linq两个List集合取交集的实现

    首先,我们可以使用`Intersect`方法来获取两个List集合的交集。`Intersect`方法会返回一个新集合,其中包含存在于两个集合中的共同元素。以下是一个简单的示例: ```csharp List&lt;int&gt; list1 = new List&lt;int&gt; { 1, 2...

    Python基础教程:两种方法获取list中指定元素的索引.pdf

    总结一下,`list.index(target)`方法适用于只需要获取列表中第一个匹配元素索引的情况,而`enumerate()`配合循环则可以用于获取所有匹配元素的索引。在实际开发中,根据具体需求选择合适的方法是非常重要的。理解并...

Global site tag (gtag.js) - Google Analytics