gpt4 book ai didi

java - 使用区分大小写的字符串键对 Java 中的对象进行排序

转载 作者:搜寻专家 更新时间:2023-10-31 08:25:28 24 4
gpt4 key购买 nike

考虑到这种情况,我需要使用名称(区域名称:字符串)对对象(区域)进行排序。我用 Java Comparator 接口(interface)试过了。

class NameComparator implements Comparator<Zone> {
public int compare(Zone z1, Zone z2) {
return z1.getZoneName().compareTo(z2.getZoneName());
}
}

但是这个比较器只能按字典顺序排序。

例如:区域名称的必需顺序。

['Zone AAa3','Zone aaa3','Zone BBB7','Zone BBb7','Zone bbb7']

当前输出:

['Zone AAa3','Zone BBB7','Zone BBb7','Zone aaa3','Zone bbb7']

除了编写原始对象排序方法之外,还有什么方法可以实现这一点吗?

最佳答案

有一个pre-defined comparator for case-insensitive sorting.您可以将它与 Zone 一起使用 by extracting a sort key.

Comparator<Zone> byName = Comparator
.comparing(Zone::getZoneName, String.CASE_INSENSITIVE_ORDER)
.thenComparing(Zone::getZoneName);

关于java - 使用区分大小写的字符串键对 Java 中的对象进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37649290/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com