`

关于两个集合有相同内容快速查找的方法

 
阅读更多
一行代码就可以了,请参考:

           List<String> list1 = new ArrayList<String>();
           List<String> list2 = new ArrayList<String>();
           list1.add("111");
           list1.add("222");
           list1.add("222")
           list1.add("333");
           list2.add("444");
           list2.add("222");
           list2.add("222");
           list2.add("555");

           Collection ret = CollectionUtils.intersection(list1, list2);
CollectionUtils--->org.apache.commons.collections.CollectionUtils
原理上是通过将两个collection转换成mapa和mapb,然后两个map再合并到一个set
中,利用set的自身唯一性,然后遍历这个set,看每个set项在两个map中是否存在
找到了则放入返回集合中,关键这个的强大之处是还能返回相同的两个222,
效率应该还可以

org.apache.commons.collections.CollectionUtils

Collection union = CollectionUtils.union( a, b );  //并集 
Collection intersection = CollectionUtils.intersection( a, b ); //交集 
Collection disjunction = CollectionUtils.disjunction( a, b ); //析取 
Collection subtract = CollectionUtils.subtract( a, b ); //差集



0
Struts2.0不支持El表达式,只支持OGNL表达式.
试一下这种形式:
<s:submit value="末页" align="left" action="waitingList"  onclick="setPageValue(<s:property value='#request.totalPage'/>);"> </s:submit>

url传递的参数要这样写:${param.参数名}
分享到:
评论

相关推荐

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

    本文将深入探讨如何比较两个集合,并关注在Java中使用List进行对比时的“新增”、“编辑”和“删除”操作。首先,我们需要理解集合的基本概念。集合是存储一组元素的数据结构,而List是一种有序的集合,允许重复元素...

    取两个集合的交集

    根据给定的信息,本文将详细解释“取两个集合的交集”的相关概念、实现方法以及具体的应用场景。本文主要分为以下几个部分:集合的基本概念、如何计算两个集合的交集、示例代码分析与理解。 ### 一、集合的基本概念...

    数据结构课程设计之集合运算

    这种方法的时间复杂度为O(m+n),其中m和n分别为两个集合的大小。 3. 差集(Difference):得到一个集合中所有在另一个集合中不存在的元素。同样可以先排序,然后比较两个指针所指向的元素,将只存在于一个集合中的...

    HashCode相同equals不同的2位字符集合算法

    例如,有两个只包含两个字符的字符串,它们的字符可能不同,但由于ASCII码的关系,它们的`hashCode()` 可能相同。ASCII码是一种7位二进制编码,用于表示128个不同的字符。例如,'A'和'a'的ASCII值相差32,但它们的...

    C#使用Equals()方法比较两个对象是否相等的方法

    例如,如果你有两个字符串对象,即使它们包含相同的字符序列,如果不指向同一块内存,`Equals()`也会返回 `false`。 为了在自定义类中实现基于内容的相等比较,你需要重写`Equals()`方法,并可能同时重写`...

    集合的运算

    - **对称差集(Symmetric Difference)**:返回两个集合中互不相同的元素。 4. **VC++实现集合运算** - **创建集合**:使用`set`或`unordered_set`的构造函数,可以初始化集合元素。 - **插入元素**:通过`...

    简单的集合运算

    4. **对称差集(Symmetric Difference)**:对称差集操作符`^`或`symmetric_difference()`函数用于找出两个集合中互不相同的元素。例如: ```python set_a = {1, 2, 3} set_b = {3, 4, 5} symmetric_diff = set...

    java中hashcode和equals的详解.pdf

    这个方法的作用是判断两个对象的内容是否相同,而不是比较对象的引用是否相同。equals 方法是 Java 中一个非常重要的方法,因为它是 Object 类中的一个基本方法,每个对象都可以根据自己的需求来重写这个方法。 三...

    Java 程序查找两个数组之间的共同元素.docx

    这里,我们利用了 `HashSet` 的 `retainAll()` 方法,它可以有效地找出两个集合的交集。首先,我们将两个数组的元素分别添加到两个哈希集中,然后对其中一个哈希集调用 `retainAll()`,传入另一个哈希集作为参数。...

    基于资源签名的Android应用相似性快速检测方法.pdf

    MinHash是一种用于快速估计两个集合相似性的概率哈希技术,而LSH则是一种能在大规模数据集中查找相似元素的近似方法。通过这两种算法,方法可以挑选出候选对并仅对这些候选对进行检验,从而避免了对所有APP对进行...

    c#集合ppt

    4. **HashSet与Dictionary**:HashSet是无序且不包含重复元素的集合,适合快速查找。Dictionary是键值对的集合,通过键来快速访问值,它内部使用哈希表实现,提供了高效的查找和添加操作。 5. **List**:List是泛型...

    阿里巴巴 java笔试 试题 有两份

    常见的数据结构如链表、队列、栈、树、图、哈希表等,以及排序(快速排序、归并排序、冒泡排序等)、查找(二分查找、哈希查找)和图算法(深度优先搜索、广度优先搜索)等,都可能是试题中的一部分。阿里巴巴可能会...

    集合基本操作C++版

    4. **对称差(Symmetric Difference)**:返回两个集合中互不相同的元素。使用`std::set_symmetric_difference`函数: ```cpp std::vector&lt;int&gt; result4; std::set_symmetric_difference(s1.begin(), s1.end(), s2....

    数据库课设—集合交,并,差

    1. **集合交集**:交集(INTERSECT)返回两个集合中都有的元素。在数据库查询中,这意味着找出满足多个条件的记录。例如,如果你有两个表,一个是员工表,一个是部门表,你可以找到同时存在于两个表中的特定员工,即...

    集合类HashSet

    只有当两个元素的哈希码相同且equals()返回true时,HashSet才会认为这两个元素是重复的,从而阻止插入重复元素。 接下来,我们来讨论如何通过键值与对象进行对应。在HashSet中,每个元素本身就是一个键,没有对应的...

    C#集合与字符窜处理C#集合与字符窜处理(源代码)

    在这个压缩包中,我们很可能是得到了一系列关于这两个主题的源代码示例,这些示例可以帮助我们深入理解C#中的集合和字符串操作。 首先,让我们来探讨C#中的集合。C#提供了多种类型的集合,包括数组、列表、队列、栈...

    day09_集合02.zip

    - 对称差集(Symmetric Difference):使用`symmetric_difference()`或`^`操作符获取两个集合中互不相同的元素。 ```python sym_diff_set = set1.symmetric_difference(set2) # 或者 set1 ^ set2 ``` 5. 集合的...

    Chapter6 集合与字典1

    10. 集合相等:判断两个集合是否包含相同的元素。 **6.2 等价类与并查集** 等价类是指在某种特定关系下可以相互替换的一组元素,而并查集是一种数据结构,用于处理动态连接和查找问题。它可以高效地执行合并...

    Python元组和集合的整理

    `intersection()` 和 `union()` 分别用于计算交集和并集,`difference()` 用于得到差集,`symmetric_difference()` 则得到两个集合中互不相同的部分。 集合生成式是创建集合的一种简洁方式,例如 `s = {x for x in ...

    java 集合 分析比较

    2. **相等性**:如果两个对象根据 `equals(Object obj)` 方法判断为相等,则它们的 `hashCode()` 必须相同。 3. **散列分布**:不同对象的 `hashCode()` 值应当尽可能均匀分布,以减少哈希冲突。 正确实现 `...

Global site tag (gtag.js) - Google Analytics