首页 > 其他 > 详细

多集合取交集公用方法

时间:2021-05-11 17:33:59      阅读:9      评论:0      收藏:0      [点我收藏+]
/**
	 * 多集合(过滤空集合)取交集retain公共方法
	 */
	public static Collection retain(Collection<Collection> c){
		Optional result = c.parallelStream()
				.filter(element -> CollectionUtils.isNotEmpty(element))
				.reduce((m1, m2)->{
			m1.retainAll(m2);
			return m1;
		});
		return (Collection) result.get();
	}

	/**
	 * 多集合(过滤空集合)取交集retain公共方法 参数String
	 */
	public static List<String> retainElementList(List<List<String>> elementLists) {
		Optional<List<String>> result = elementLists.parallelStream()
				.filter(elementList -> CollectionUtils.isNotEmpty(elementList))
				.reduce((a, b) -> {
					a.retainAll(b);
					return a;
				});
		return result.orElse(new ArrayList<>());
	}

多集合取交集公用方法

原文:https://www.cnblogs.com/wszn-java/p/14754713.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!