微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在不区分大小写的情况下检查ArrayList是否包含某个String

如何解决在不区分大小写的情况下检查ArrayList是否包含某个String

您将需要遍历列表并检查每个元素。这就是contains方法中正在发生的事情。由于您要对要检查的String元素使用equalsIgnoreCase方法而不是equals方法,因此需要显式地进行操作。既可以使用for- each循环,也可以使用Stream(下面的示例使用Stream)。

private final List<String> list = new ArrayList<>();

public void addIfNotPresent(String str) {
    if (list.stream().noneMatch(s -> s.equalsIgnoreCase(str))) {
        list.add(str);
    }
}

解决方法

在不区分大小写的情况下,如何使用.contains方法搜索ArrayList?我试过了.containsIgnoreCase,但是发现IgnoreCase方法仅适用于字符串。

这是我尝试创建的方法:

 private ArrayList<String> Ord = new ArrayList<String>();

 public void leggTilOrd(String ord){
     if (!Ord.contains(ord)){
         Ord.add(ord);
     }
 }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。