`

快速得到两个list中不同部分的list

 
阅读更多
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class TesList {
	public static void main(String[] args) {
		List<String> list = new ArrayList<String>();
		list.add("123");
		list.add("456");
		list.add("789");

		List<String> list2 = new ArrayList<String>();
		list2.add("123");
		list2.add("456");
		list2.add("789");
		list2.add("xxxx");
		list2.add("yyyy");


		List<String>list3= getDiffrent(list, list2);
		for (String string : list3) {
			System.out.println(string);
		}
	}

	private static List<String> getDiffrent(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>();
		for (String string : list1) {
			map.put(string, 1);
		}
		for (String string : list2) {
			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("getDiffrent total times "
				+ (System.nanoTime() - st));
		return diff;

	}
}

分享到:
评论

相关推荐

    两个list比较 取不同的对象

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

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

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

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

    在Java编程中,集合框架是核心部分之一,而List接口是集合框架的重要组成部分。当我们处理业务数据时,经常需要在不同实体类的列表之间进行转换,以满足不同的业务需求。这个压缩包文件“基于java8新特性+反射机制...

    java获取list中两元素时间差

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

    Java将2个List集合合并到一个List里面并排序工具类

    Java将2个List集合合并到一个List里面并排序工具类 1、Java编程资源,定义了一个名为`ListMerger`的工具类,主要包含一个名为`mergeAndSortLists`的静态方法。此方法用于将两个已经根据时间顺序排列的List合并成一...

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

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

    python判断两个列表中相同和不同的元素

    为了检查这两个列表的异同,我们可以使用列表推导式(List Comprehension)来快速找出它们的交集和并集。 1. 交集(两个列表中都存在的元素): ```python a = [x for x in list1 if x in list2] ``` 这行代码...

    在python中以相同顺序shuffle两个list的方法

    这时就需要以相同的顺序打乱两个list,那么在python中如何实现呢?可以通过设置相同的随机种子,再shuffle的方式来实现。 代码如下: import random randnum = random.randint(0,100) random.seed(randnum)

    list to list 将list内容移到另一个list

    例如,`$.merge()` 函数可以合并两个数组。 综上所述,`list to list` 涉及到的是列表或数组的内容迁移、复制或合并,这是编程中常见的数据操作,特别是在处理大量数据时。`listtolist.js` 文件可能提供了一些方便...

    java计算同一个list中是否有相同的值

    在 Java 编程中,判断一个 `List` 中是否存在重复元素是一项常见的需求。特别是在数据处理、验证或分析等场景中,确保数据的唯一性对于维持数据完整性至关重要。 #### 核心概念解析 在给定的代码片段中,作者提供...

    java合并LIST

    在本文中,我们将通过一个示例代码来演示如何使用Java语言来合并两个LIST。首先,我们定义了两个LIST,lst1和lst2,每个LIST中都包含一些UserBean对象。然后,我们使用addAll()方法将lst2合并到lst1中。 在合并过程...

    List集合之间内连接

    假设我们有两个List集合,一个是`List&lt;Person&gt;`,另一个是`List&lt;Address&gt;`,我们想找到Person列表中与Address列表匹配的元素,基于它们的ID字段。 ```csharp using System.Linq; class Person { public int ID { ...

    Java取得两个数组中不同的元素

    该源代码很好地体现了数组与List之间的转换,同时也体现了两个集合的合并操作

    java 中如何从LIST 对象取值

    本文将深入探讨如何从List对象中获取数据,包括使用不同类型的List实现以及从List中提取特定值的方法。我们将通过示例代码来理解这些概念,同时也会涉及到与List相关的常见操作。 ### 一、List的基本概念 在Java中...

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

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

    java比较两个list是否相同equals的代码详解

    Java比较两个List是否相同的equals方法详解 在 Java 编程中,比较两个 List 是否相同是一个非常重要的操作。今天,我们将探索 Java 中比较两个 List 是否相同的 equals 方法的实现。 首先,让我们了解一下为什么...

    list嵌套list例子

    在这个例子中,`nested_list`包含整数和两个子列表,每个子列表也包含整数。 2. 访问嵌套列表的元素: 访问嵌套列表中的元素与访问普通列表类似,只是需要额外的索引层级。比如要获取子列表的第一个元素,可以这样...

    Java8 Stream对两个 List 遍历匹配数据的优化处理操作

    在本文中,我们将探讨如何使用Java8 Stream来对两个List进行遍历和匹配数据的优化处理操作。 首先,让我们看看两个List的数据结构。第一个List的数据结构如下: { name=张三丰1, id=1 } { name=张三丰2, id=2 } { ...

    Java比较两个List的值是否相等的方法

    在Java编程中,比较两个List的值是否相等是一个常见的需求,特别是在处理数据集合时。这里我们探讨一种方法,用于判断两个List是否包含相同的元素,不论它们的顺序如何。这个方法的关键在于比较List的大小以及排序后...

Global site tag (gtag.js) - Google Analytics