首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在android和其他字符串中对数组进行排序

在android和其他字符串中对数组进行排序
EN

Stack Overflow用户
提问于 2013-08-15 13:36:03
回答 1查看 1.7K关注 0票数 1

我有一个数组列表,其中包含以下字符串.

星期二,星期四,星期一,星期六。

我想表现得像:

星期一,星期二,星期四,星期六。

有可能出现在星期天,星期三。

和我有一个数组列表,其中包含以下字符串.

狗,兔子,牛,鸭子,猫。

我想表现得像:

兔子,猫,牛,鸭子,狗。

有可能吗?谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-15 13:38:46

是的,你应该为每个人做一个Comparator文档

代码语言:javascript
运行
复制
public final class MyComparator implements Comparator<String>
{
    @Override
    public int compare(String a, String b)
    {
        //Return +1 if a>b, -1 if a<b, 0 if equal
    }
}

对于你一周中的每一天来说,你可能想让你的比较器类似于这一点;

代码语言:javascript
运行
复制
public final class MyComparator implements Comparator<String>
{
    private String[] items ={
        "monday",
        "tuesday",
        "wednesday",
        "thursday",
        "friday",
        "saturday",
        "sunday"
    };
    @Override
    public int compare(String a, String b)
    {
        int ai = items.length, bi=items.length;
        for(int i = 0; i<items.length; i++)
        {
            if(items[i].equalsIgnoreCase(a))
                ai=i;
            if(items[i].equalsIgnoreCase(b))
                bi=i;
        }
        return ai-bi;
    }
}

然后根据您的定制订单对您的列单进行排序;

代码语言:javascript
运行
复制
MyComparator myComparator = new MyComparator();
Collections.sort(myArrayList, myComparator);

如果您需要默认的类型排序(如果它实现了可比的话),您可以在没有第二个参数的情况下调用Collections.sort()文档

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18253851

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档