【问题标题】:Sorting LinkedList<MyClass> [duplicate]排序 LinkedList<MyClass> [重复]
【发布时间】:2016-04-22 10:52:27
【问题描述】:

如何使用list1.sort(); 方法对list1MyClass 类型的对象进行排序

如果我希望根据 Priority int 值对列表进行排序? 所以 MyClass 对象具有最大优先级将在 LinkedList list1 中的索引 0 处。

LinkedList&lt;MyClass&gt; list1 = new LinkedList&lt;&gt;();

这就是 MyClass 的样子,它没有 Overriden 方法。

public class MyClass {    
    int id;
    int LeftTime;
    int Priority;
    int Rasp;

    public Dretva(int[] lista) {
        this.id = lista[1];
        this.LeftTime = lista[2];
        this.Priority = lista[3];
        this.Rasp = lista[4];
    }

    public String toString(){
        return String.format("%d/%d/%d", id, Priority ,LeftTime);
    }
}

【问题讨论】:

标签: java linked-list comparator


【解决方案1】:

您可以像这样编写自定义比较器:

static class MyClassComparator implements Comparator<MyClass>
 {
     public int compare(MyClass c1, MyClass c2)
     {
         return c1.getPriority().compareTo(c2.getPriority());
     }
 }

然后使用Collections.sort(list1,new MyClassComparator());

【讨论】:

    猜你喜欢
    • 2019-01-14
    • 1970-01-01
    • 2012-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-16
    • 2020-05-11
    相关资源
    最近更新 更多