java求两个字符串数组的交集忽略大小写
时间: 2023-06-29 12:09:10 浏览: 128
可以先将两个字符串数组转换成小写形式,然后使用Java中的Set集合去重和取交集操作。下面是一个示例代码:
```java
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
public class IntersectionOfStringArrays {
public static void main(String[] args) {
String[] arr1 = {"apple", "banana", "Orange", "grape", "Pineapple"};
String[] arr2 = {"ORANGE", "pineapple", "melon", "grape"};
// 将两个数组转换成小写形式
String[] arr1Lower = Arrays.stream(arr1).map(String::toLowerCase).toArray(String[]::new);
String[] arr2Lower = Arrays.stream(arr2).map(String::toLowerCase).toArray(String[]::new);
// 使用Set集合取交集
Set<String> set1 = new HashSet<>(Arrays.asList(arr1Lower));
Set<String> set2 = new HashSet<>(Arrays.asList(arr2Lower));
set1.retainAll(set2);
// 输出交集
System.out.println(set1); // [orange, grape, pineapple]
}
}
```
在上面的示例代码中,我们首先使用Java 8中的Stream API将两个字符串数组转换成小写形式,然后使用HashSet去重并取交集,最后输出交集结果。
阅读全文