public static void main(String args[])
{
Map tempMap = new HashMap();
List tempList = new ArrayList();
SunClass a1 = new SunClass("1", "zxy1");
SunClass a6 = new SunClass("6", "zxy6");
SunClass a2 = new SunClass("2", "zxy2");
SunClass a3 = new SunClass("3", "zxy3"); tempList.add(a1);
tempList.add(a2);
tempList.add(a3);
tempList.add(a6); Collections.sort(tempList); for (int i = 0; i < tempList.size(); i ++)
{
System.out.println(tempList.get(i));
}
}
排序的时候为什么会出错???
{
Map tempMap = new HashMap();
List tempList = new ArrayList();
SunClass a1 = new SunClass("1", "zxy1");
SunClass a6 = new SunClass("6", "zxy6");
SunClass a2 = new SunClass("2", "zxy2");
SunClass a3 = new SunClass("3", "zxy3"); tempList.add(a1);
tempList.add(a2);
tempList.add(a3);
tempList.add(a6); Collections.sort(tempList); for (int i = 0; i < tempList.size(); i ++)
{
System.out.println(tempList.get(i));
}
}
排序的时候为什么会出错???
String name;
public int compareTo(SunClass o) {
return Integer.valueOf(this.getId()) - Integer.valueOf(o.getId());
} public String toString() {
return "Cat{" +
"id=" + id +
", name='" + name + '\'' +
'}';
} public String getId() {
return id;
} public void setId(String id) {
this.id = id;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public SunClass(String id, String name) {
this.id = id;
this.name = name;
}
搞定了,需要重写Comparable<SunClass> 中的方法