排序 LinkedList<MyClass> [重复]
Posted
技术标签:
【中文标题】排序 LinkedList<MyClass> [重复]【英文标题】:Sorting LinkedList<MyClass> [duplicate] 【发布时间】:2016-04-22 10:52:27 【问题描述】:如何使用list1.sort();
方法对list1
和MyClass
类型的对象进行排序
如果我希望根据 Priority int 值对列表进行排序? 所以 MyClass 对象具有最大优先级将在 LinkedList list1 中的索引 0 处。
LinkedList<MyClass> list1 = new LinkedList<>();
这就是 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);
【问题讨论】:
编写自定义比较器。 实现Comparator
供您的班级使用Collections.sort()
【参考方案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());
【讨论】:
以上是关于排序 LinkedList<MyClass> [重复]的主要内容,如果未能解决你的问题,请参考以下文章