我花了差不多几个小时List<String>在我的代码中调试一个被我的错误排序的代码Comparator.
结果string.compareTo(string2)是区分大小写.这意味着所有大写字母都在小写字母之前.例如,"Z"出现在"d"之前.
有没有更好的方法来比较2 Strings内部Comparator和按字母顺序升序排序,而不是其他情况下区分大小写string.toLowerCase().compareTo(string2.toLowerCase());?
编辑:有可能在我的String喜欢中出现任何重音字母,例如:ä,ö,ü,é,è等.
Mar*_*eel 12
String本身提供了两个选项:
String.compareToIgnoreCase(String):不区分大小写的变体compareTo)String.CASE_INSENSITIVE_ORDER:Comparator具有相同的排序compareToIgnoreCasejava.text.Collator和java.text.RuleBasedCollator作为提示:您的第一站应该是Javadoc,而不是在Stack Overflow上发布一个问题:Javadoc非常广泛并且通常会提供快速答案.