gpt4 book ai didi

java - 自定义排序 - 字符串和 float 不同

转载 作者:行者123 更新时间:2023-11-30 10:59:22 25 4
gpt4 key购买 nike

我正在根据自定义 .sort 对包含字符串的数组列表进行排序。这些实际上是表格中的值。有时字符串实际上可以是一个 float (作为一个字符串对象)。所以整列都是 float 。如果是这样,我希望将它们作为 float 而不是字符串进行比较。知道如何修改以下代码以使其工作吗?我应该能够使用 try/catch 检查它是否是一个 float ,但是我该如何更改排序?

static Comparator<String[]> byIndices(int[] arr) {
Comparator<String[]> comparator = comparing((array) -> array[arr[0]]);
int c = 0;
for (int index : arr) {
if (c == 0) {
continue;
}
comparator = comparator.thenComparing((array) -> array[index]);
c++;
}
return comparator;
}

最佳答案

您可以尝试为比较器创建一个工厂。这将根据您需要 String 比较或 Float 比较的天气返回比较器实例。下面是伪代码

ComparatorFactory{
public Comparator getComparator(String inputType)
if(// inputType is float){
// return float comparator;
}
// return String comparator

}

关于java - 自定义排序 - 字符串和 float 不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31912305/

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