Java如何通过其中一个元素按字母顺序排序List

时间:2012-12-18 18:20:46

标签: java android list sorting twitter4j

我正在尝试将用户朋友列表添加到我的应用程序中,以便他们可以快速找到他们在Twitter上关注的人,目前我能够做到这一点,但结果会根据用户的最新用户回来接下来但不按字母顺序这是我想要的,有没有一种方法可以基本上采用列表列表并根据列表中的一个特定元素对整个列表进行排序?

编辑:抱歉完全忘记添加我的代码,道歉

long cursor = -1;
        List<User> users = new ArrayList<User>();
        try {
            PagableResponseList<User> userGroups = null;
            do {
                userGroups = twitter.getFriendsList(app.getUserId(), cursor);
                for (User user : userGroups) {
                    users.add(user);
                }
            } while ((cursor = userGroups.getNextCursor()) != 0);

        } catch (TwitterException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

2 个答案:

答案 0 :(得分:2)

使用Collections.sort()方法。您必须为此创建自定义Comparator,但有很多可用的教程 您基本上做的是将Comparator子类化以比较两个User对象,并根据名称返回结果。如果名称是字符串,则可以返回user1.name.compareTo(user2.name);,因为字符串已经有比较方法。

答案 1 :(得分:0)

将您的列表更改为集

Set<User> users = new TreeSet<User>();

这假设您的User是唯一的。

您可能需要将User课程包装在自己的课程中,这样您就可以编写自己的Comparator