Comparable使用

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;
			}
		}
	}


你可能感兴趣的:(comparable)