gpt4 book ai didi

java - 使 ArrayList 元素不区分大小写

转载 作者:搜寻专家 更新时间:2023-10-30 21:13:43 24 4
gpt4 key购买 nike

在我的 Java 应用程序中,我需要比较两个列表的元素是否相似。

简而言之,假设我声明了两个列表,如下所示

List<String> a = new ArrayList<String>();
a.add("one");
a.add("three");
a.add("two");
Collections.sort(a);


List<String> a1 = new ArrayList<String>();
a1.add("ONE");
a1.add("two");
a1.add("THREE");
Collections.sort(a);

如果我写一个相等条件,它会失败,因为某些列表元素的大小写不同,比如

if(a.equals(a1)){
System.out.println("equal");
} else{
System.out.println("not equal");
}

它会显示结果“不等于”

所以请告诉我如何使列表元素仅在 Java 语言中不区分大小写。

感谢和问候

最佳答案

为什么不使用带有不区分大小写的比较器的 SortedSet 呢?随着String.CASE_INSENSITIVE_ORDER比较器

你的代码被简化为

Set<String> a = new TreeSet<String>(String.CASE_INSENSITIVE_ORDER);
a.add("one");
a.add("three");
a.add("two");


Set<String> a1 = new TreeSet<String>(String.CASE_INSENSITIVE_ORDER);
a1.add("ONE");
a1.add("two");
a1.add("THREE");

你的平等条件应该没有任何问题

EDIT 根据评论修改。感谢大家指正。

关于java - 使 ArrayList 元素不区分大小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3529025/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com