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)); }


