import java.util.HashSet;
import java.util.Set;
public class IntersectionCheck {
public static boolean hasIntersection(Set<?> set1, Set<?> set2) {
// 使用retainAll方法来判断两个集合是否有交集
// retainAll会修改调用它的集合,只保留两个集合中共有的元素
// 为了避免修改原始集合,我们创建一个副本
Set<?> copySet = new HashSet<>(set1);
return !copySet.retainAll(set2) && !copySet.isEmpty();
}
public static void main(String[] args) {
Set<Integer> set1 = new HashSet<>();
set1.add(1);
set1.add(2);
set1.add(3);
Set<Integer> set2 = new HashSet<>();
set2.add(3);
set2.add(4);
set2.add(5);
if (hasIntersection(set1, set2)) {
System.out.println("两个集合有交集");
} else {
System.out.println("两个集合没有交集");
}
}
}
hasIntersection
方法:该方法接受两个 Set
类型的参数,并返回一个布尔值,表示这两个集合是否有交集。
retainAll
方法来检查交集。retainAll
会修改调用它的集合,使其只包含两个集合中共有的元素。retainAll
之前先创建了一个集合的副本。true
,否则返回 false
。main
方法:创建了两个 HashSet
集合 set1
和 set2
,并调用 hasIntersection
方法来判断它们是否有交集,最后根据结果输出相应的信息。
上一篇:java修改数组中的某个元素
下一篇:java线程的知识点
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站