-3

我正在尝试将用户朋友列表添加到我的应用程序中,以便他们可以快速找到他们在 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();
        }
4

2 回答 2

2

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

于 2012-12-18T19:15:31.480 回答
0

将您的列表更改为一组

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

这假设您User的 s 是唯一的。

您可能必须User用自己的类包装该类,以便编写自己的Comparator.

于 2012-12-18T18:44:48.967 回答