Java 判断两个list是否有相同元素
时间: 2024-03-27 13:37:53 浏览: 120
Java 中同样可以通过将两个列表转换为集合,然后比较它们的交集是否为空来判断两个列表是否有相同元素,示例代码如下:
```java
import java.util.*;
public class Main {
public static boolean hasCommonElement(List<Integer> list1, List<Integer> list2) {
Set<Integer> set1 = new HashSet<>(list1);
Set<Integer> set2 = new HashSet<>(list2);
return !Collections.disjoint(set1, set2); // 判断两个集合的交集是否为空
}
public static void main(String[] args) {
List<Integer> list1 = Arrays.asList(1, 2, 3);
List<Integer> list2 = Arrays.asList(3, 4, 5);
List<Integer> list3 = Arrays.asList(6, 7, 8);
System.out.println(hasCommonElement(list1, list2)); // true
System.out.println(hasCommonElement(list1, list3)); // false
}
}
```
另外,也可以使用循环遍历的方式来判断两个列表是否有相同元素,示例代码如下:
```java
import java.util.*;
public class Main {
public static boolean hasCommonElement(List<Integer> list1, List<Integer> list2) {
for (int item : list1) {
if (list2.contains(item)) {
return true;
}
}
return false;
}
public static void main(String[] args) {
List<Integer> list1 = Arrays.asList(1, 2, 3);
List<Integer> list2 = Arrays.asList(3, 4, 5);
List<Integer> list3 = Arrays.asList(6, 7, 8);
System.out.println(hasCommonElement(list1, list2)); // true
System.out.println(hasCommonElement(list1, list3)); // false
}
}
```
阅读全文