相关疑难解决方法(0)

如何在不同的时间按不同的参数对列表进行排序

我有一个以Person多个属性命名的类,例如:

public class Person {
    private int id;
    private String name, address;
    // Many more properties.
}
Run Code Online (Sandbox Code Playgroud)

很多Person对象存储在一个ArrayList<Person>.我想通过多个排序参数对此列表进行排序,并且不时有所不同.例如,我可能有一次想要按name升序然后address降序排序,而另一次只能通过id降序排序.

而且我不想创建自己的排序方法(即,我想使用Collections.sort(personList, someComparator).实现这一目标的最优雅的解决方案是什么?

java sorting

94
推荐指数
4
解决办法
9万
查看次数

如何在android中对RecyclerView项进行排序

我正在开发一个Android聊天应用程序.当我打电话给我的api时,它会返回按user_id排序的聊天列表.但我需要做的是通过message_id序列化,因为我想先显示最后一条消息.这是我的onBindViewHolder方法,其中我得到了值.

public void onBindViewHolder(final MyAdapter_HomeViewHolder holder, final int position) {

    holder.userNameTV.setText(data.get(position).getUserInfo().getFullName());
    holder.msgBodyTV.setText(data.get(position).getBody());
    holder.originator_iD.setText(data.get(position).getUserInfo().getId().toString());

    //message ID. I need to serialize my recyclerView by this ID.biggest id should appear first.
    holder.messageId.setText(data.get(position).getId().toString());

    holder.owner_type_ET.setText("1");
    holder.subject_ET.setText("Message");

}
Run Code Online (Sandbox Code Playgroud)

如果您需要查看完整代码,请https://pastebin.com/Zxmq36Gn

android adapter android-recyclerview

18
推荐指数
2
解决办法
2万
查看次数

Java排序Arraylist并返回排序后的列表

你好我想在这样的日期属性返回一个ArrayList的排序答案

public class CustomComparator implements Comparator<MyObject> {
@Override
public int compare(MyObject o1, MyObject o2) {
    return o1.getStartDate().compareTo(o2.getStartDate());
}
}
Run Code Online (Sandbox Code Playgroud)

我的问题是我该如何返回排序后的列表而不是返回整数... 我需要的只是一种方法,我将其传递给列表,然后返回排序后的列表。

就我而言,列表中有很多项目,我不知道是否可以比较所有项目并进行相应排序。

提前致谢。

java sorting arraylist

4
推荐指数
2
解决办法
9586
查看次数

Java排序数组由第三个元素组成

我想按下降它的第三列对String数组后代进行排序,问题是我想按它的数值排序.

例:

如果我最初有这个数组:

String [][] array = new String[][] {
  {"Barcelona", "156", "1604"}, 
  {"Girona", "256", "97"},
  {"Tarragona", "91", "132"},
  {"Saragossa", "140", "666"}
}
Run Code Online (Sandbox Code Playgroud)

我希望它成为这个:

{
  {"Barcelona", "156", "1604"}, 
  {"Saragossa", "140", "666"}, 
  {"Tarragona", "91", "132"}, 
  {"Girona", "256", "97"}
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

java arrays sorting

2
推荐指数
1
解决办法
144
查看次数

如何按字母顺序然后按数字对ArrayList进行排序

这是排序之前的样子。书名,年出版

在此处输入图片说明

我想按字母顺序对标题进行排序,然后再发布年份。
这是我当前排序之前的编码:

    ArrayList BookList = new ArrayList();
    BufferedReader br = new BufferedReader (new FileReader ("bookInput.txt"));

    String str = br.readLine();
    while (str!=null){
        StringTokenizer st = new StringTokenizer(str,";");
        String title = st.nextToken();
        String yr = st.nextToken();
        int year = Integer.parseInt(yr);
        Book b1 = new Book (title,year);
        BookList.add(b1);
        str = br.readLine();
    }
    br.close();

    //3(d)
    System.out.println("List of Books" + "( " + BookList.size() + " record(s) ) ");
    for (int i = 0; i < BookList.size(); i++){
        Book b2 = (Book)BookList.get(i);
        System.out.println("#" + …
Run Code Online (Sandbox Code Playgroud)

java sorting arraylist

0
推荐指数
1
解决办法
56
查看次数