gpt4 book ai didi

java - 通过两个过滤器对字符串数组进行排序

转载 作者:行者123 更新时间:2023-12-01 09:12:34 25 4
gpt4 key购买 nike

我有以下字符串数组:“0 11”、“22 34”、“5 14”、“22 13”...如何对它进行排序以使两个数字都按升序排列:“0 11”、“5 14”、“22 13”、“22 34”?

最佳答案

您只需要实现一个适当的比较器。像这样:

public static void main(String[] args) {
String [] ar = {"0 11", "22 34", "5 14", "22 13"};

Arrays.sort(ar, new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
String [] value1 = o1.split(" ");
String [] value2 = o2.split(" ");
Integer o1First = Integer.valueOf(value1[0]);
Integer o1Second = Integer.valueOf(value1[1]);
Integer o2First = Integer.valueOf(value2[0]);
Integer o2Second = Integer.valueOf(value2[1]);
if (!o1First.equals(o2First))
return o1First.compareTo(o2First);
return o1Second.compareTo(o2Second);

}
});

System.out.println(Arrays.toString(ar));
}

关于java - 通过两个过滤器对字符串数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40828969/

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