java中判断俩个list中是否存在相同的元素
时间: 2024-03-13 07:45:53 浏览: 42
可以使用Java 8中的Stream API来判断俩个list中是否存在相同的元素。具体代码如下:
```java
List<String> list1 = Arrays.asList("A", "B", "C");
List<String> list2 = Arrays.asList("C", "D", "E");
boolean isExist = list1.stream().anyMatch(list2::contains);
if (isExist) {
System.out.println("存在相同元素");
} else {
System.out.println("不存在相同元素");
}
```
上述代码首先使用Arrays.asList方法创建了两个List集合,然后使用Stream API中的anyMatch方法判断第一个List中是否存在任意一个元素在第二个List中出现过。如果存在相同元素,则返回true,否则返回false。
相关问题
Java 判断两个list是否有相同元素
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
}
}
```
java中比较两个list是否有相同元素
在Java中比较两个List是否有相同元素,可以使用List的containsAll()方法。具体步骤如下:
1. 定义两个List对象 list1 和 list2。
2. 判断 list1 是否包含 list2 中的所有元素,代码如下:
```
boolean result = list1.containsAll(list2);
```
其中,result 表示 list1 是否包含 list2 中的所有元素,如果包含则返回 true,否则返回 false。
需要注意的是,containsAll()方法比较的是元素是否相同,而不是顺序是否相同。如果需要比较顺序是否相同,可以使用equals()方法。