对arrayList进行排序

时间:2014-06-20 20:11:43

标签: java android sorting arraylist

我有一个数组列表我想按字母顺序对它进行排序,请你帮我解决一下这个实现

提前致谢!

 public ArrayList<ListData> getList(String itemsKey) {
    if (itemsKey.equalsIgnoreCase(“names”)) {


        return nameList;

    } else {
        return null;
    }
}

我想返回nameList排序

2 个答案:

答案 0 :(得分:2)

您可以使用:

Collections.sort(nameList, String.CASE_INSENSITIVE_ORDER);

它会按字母顺序对字符串进行排序。

答案 1 :(得分:2)

您需要使用自定义Comparator对此集合进行排序。在不知道你的ListItemNameDefinition类的情况下编写确切的代码很难,但它会是这样的(假设NameDefinition有一个name字段 - 如果没有,相应调整):

Collections.sort(nameList, new Comparator<ListData.ListItem>()
{
    @Override
    public int compare(ListItem lhs, ListItem rhs)
    {
        return String.CASE_INSENSITIVE_ORDER.compare(lhs.nameDefinition.name, rhs.nameDefinition.name);
    }
});