gpt4 book ai didi

java - 对 String[][] 意外输出进行排序

转载 作者:行者123 更新时间:2023-12-02 07:22:02 26 4
gpt4 key购买 nike

我想根据第二列对 String[][] 进行排序。我试过这个

public static String[][] sorting_minn(String[][] list){ 
double[] temp = new double[list.length];
String[][] tempf = list;

if(list[1][1]!=null){
for(int i = 0; i<list.length; i++){
if(list[i][2]==null){
break;

} else {
temp[i]=Double.parseDouble(list[i][2]);


}

}

Arrays.sort(temp);

for(int f = 0; f<list.length-1;f++){
for(int m = 0; m<list.length;m++){
if(list[m][2]!=null && Double.parseDouble(list[m][2])==temp[f]){
for(int n = 0; n<4; n++){
tempf[list.length-f-1][n]=list[m][n];

}
m = list.length;
}
}

}
}
return tempf;

}

作为输出,我得到:output 。我需要有关如何改进此代码的建议。

最佳答案

尝试这样的事情:

        Arrays.sort(list, new Comparator<String[]>() {
@Override
public int compare(String[] o1, String[] o2) {
String left = o1[1]!=null ? o1[1] : "";
String right = o2[1]!=null ? o2[1] : "";
return left.compareTo(right);
}
});

这将空值视为空字符串,并利用了字符串是可比较的这一事实,尽管按字典顺序排列。如果您想要相反的顺序,只需这样做:

right.compareTo(left)

如果你想要整数排序,你可以从两侧解析一个整数(Integer.MIN for null)并比较 2 个整数

关于java - 对 String[][] 意外输出进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14102541/

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