gpt4 book ai didi

java - 如何对ArrayList中的数组进行排序?

转载 作者:行者123 更新时间:2023-12-01 08:07:33 27 4
gpt4 key购买 nike

我有ArrayList,它包含很多数组,每个数组都包含名字,姓氏。现在我想根据姓氏对列表进行排序。

示例:

ArrayList<String[]> list=new ArrayList<String[]>();
String[] name1={"koti" ,"reddy"};
String[] name2={"hanu" ,"sanjay"};
String[] name3={"ajay" ,"zedeja"};
String[] name4={"basha" ,"kadhar"};

list.add(name1);
list.add(name2);
list.add(name3);
list.add(name4);

我想要的排序顺序如下:

basha kadhar 
koti reddy
hanu sanjay
ajay zedeja

您能尽快帮忙吗?提前致谢

最佳答案

编写自定义 Comparator 并将其与数据一起提供给适当的 sort 重载。

但是,我建议使用单独的 Person/Name 类型,而不是字符串数组,因为它将使数据更容易跟踪并且它可以实现 Comparable (这将消除/取代比较器的需要)。

现在,在编写适用的 compare/compareTo 时,代码应类似于:

int cmpLastName = a_lastName.compareTo(b_lastName);
if (cmpLastName == 0) {
// same lastname, order now based on first name
return a_firstName.compareTo(b_firstName);
} else {
// different lastname, so have enough ordering
return cmpLastName;
}

关于java - 如何对ArrayList中的数组进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20279103/

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