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

一行代码就可以了,请参考:

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" οnclick="setPageValue(<s:property value='#request.totalPage'/>);"> </s:submit>

url传递的参数要这样写:${param.参数名}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值