java 判断集合 不考虑顺序
时间: 2023-05-03 09:06:00 浏览: 59
在Java中判断集合是否相等时,通常需要考虑元素的顺序。不过有时候,我们不需要考虑元素的顺序,只需要判断两个集合是否包含完全相同的元素,而不需要考虑它们的排列顺序。那么,如何实现这个功能呢?
一种方法是使用Java 8中引入的stream和lambda表达式。我们可以将两个集合分别转换为流,去重后排序,再利用allMatch方法判断两个集合是否完全相等,代码如下:
```
import java.util.*;
import java.util.stream.*;
public class Test {
public static void main(String[] args) {
List<Integer> list1 = Arrays.asList(1, 2, 3, 4, 5);
List<Integer> list2 = Arrays.asList(3, 4, 2, 1, 5);
boolean isEqual = list1.stream().distinct().sorted().collect(Collectors.toList())
.equals(list2.stream().distinct().sorted().collect(Collectors.toList()));
System.out.println(isEqual); //true
}
}
```
另一种方法是使用HashSet。HashSet是一个不保证元素顺序的集合,可以用来判断两个集合是否包含完全相同的元素,代码如下:
```
import java.util.*;
public class Test {
public static void main(String[] args) {
List<Integer> list1 = Arrays.asList(1, 2, 3, 4, 5);
List<Integer> list2 = Arrays.asList(3, 4, 2, 1, 5);
Set<Integer> set1 = new HashSet<>(list1);
Set<Integer> set2 = new HashSet<>(list2);
boolean isEqual = set1.equals(set2);
System.out.println(isEqual); //true
}
}
```
以上两种方法都可以实现不考虑顺序的集合判断,具体选择哪种方法取决于实际情况。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)