1.对象类必须实现Comparable接口
2.使用Collections.sort(list);对集合进行排序
3.return返回1的排在集合的前面,自己可以在这个方法里设置自己的排序。
默认使用的是升序
@Override
public int compareTo(A a) {
return a.getOrder().compareTo(this.order);
}
下面是降序排列:
public static class ExternalImageInfo implements Comparable<ExternalImageInfo> {
// 设置id为自增长的组件
private Integer id;
private String path;
private int status;// 0未选中,1选中未插入数据库,||(这边是已经插入数据库的可能状态)2选中插入数据库,3已经上传照片,4完全发布
private String name;
private String date;// 秒数
private int fileid;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getPath() {
return path;
}
public void setPath(String path) {
this.path = path;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getDate() {
return date;
}
public void setDate(String date) {
this.date = date;
}
public int getFileid() {
return fileid;
}
public void setFileid(int fileid) {
this.fileid = fileid;
}
@Override
public int compareTo(ExternalImageInfo another) {
long a = Long.parseLong(date);
long b = Long.parseLong(another.getDate());
if (b > a) {
return 1;
} else if (b < a) {
return -1;
} else {
return 0;
}
}
}