数组contains()没有区分大小写的查找?

我可以以某种方式告诉array.contains()方法不区分大小写吗?

List<String> data = Arrays.asList(

"one", Two", "tHRee"); //lots of entries (100+)

data.contains("three");

回答:

contains只需检查列表中是否存在对象。因此,您不能在此处进行不区分大小写的查找,因为“三”与“三”是不同的对象。

解决此问题的简单方法是

public boolean containsCaseInsensitive(String s, List<String> l){

for (String string : l){

if (string.equalsIgnoreCase(s)){

return true;

}

}

return false;

}

然后

containsCaseInsensitive("three", data);

Java 8+版本:

public boolean containsCaseInsensitive(String s, List<String> l){

return l.stream().anyMatch(x -> x.equalsIgnoreCase(s));

}

以上是 数组contains()没有区分大小写的查找? 的全部内容, 来源链接: utcz.com/qa/413421.html

回到顶部