Java 比较器中可以使用什么键比较器。比较(函数键提取器、比较器键比较器)?
比较器(功能键提取器、比较器键比较器) 可以这样与String.CASE\u不区分大小写\u顺序一起使用Java 比较器中可以使用什么键比较器。比较(函数键提取器、比较器键比较器)?,java,comparator,Java,Comparator,比较器(功能键提取器、比较器键比较器) 可以这样与String.CASE\u不区分大小写\u顺序一起使用 Comparator<Person> cmp = Comparator.comparing( Person::getLastName, String.CASE_INSENSITIVE_ORDER); Comparator cmp=Comparator.comparating( Person::getLastName, 字符串。
Comparator<Person> cmp = Comparator.comparing(
Person::getLastName,
String.CASE_INSENSITIVE_ORDER);
Comparator cmp=Comparator.comparating(
Person::getLastName,
字符串。不区分大小写(顺序);
还有什么可以用来代替keyComparator(除了String.CASE\u INSENSITIVE\u ORDER之外)?我想不出另一个例子。如果你问
字符串
类中还有什么比较器
,答案是没有
Java 8中的类只有一个比较器
然而,这并不意味着你不能使用其他东西。每个比较器都将在那里工作。如果您不需要不区分大小写的排序,可以使用Comparator.naturalOrder()
、Comparator.reverseOrder()
,或者任何您想要的。您也可以编写这样的lambda来传递它(尽管我发现Comparator
的静态方法更具可读性):
不幸的是,太宽泛了。
(x, y) -> Integer.compare(x.length(), y.length())