pojo的排序问题疑问
来源:互联网 发布:python genetic 编辑:程序博客网 时间:2024/04/30 22:37
做项目时遇到一个List<TapeGroup>排序问题,查了点资料都说要在实体类上实现comparable接口,原模原样的写了个,可是觉得不好,求大牛给点建议!!!求大牛给点建议!!!求大牛给点建议!!!
public class TapeGroup implements Comparable<TapeGroup>{
private String id;
private String name ;
private String ctime ;
private String remark ;
private String total ;
private String ausize ;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCtime() {
return ctime;
}
public void setCtime(String ctime) {
this.ctime = ctime;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public String getTotal() {
return total;
}
public void setTotal(String total) {
this.total = total;
}
public String getAusize() {
return ausize;
}
public void setAusize(String ausize) {
this.ausize = ausize;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
@Override
public String toString() {
return "TapeGroup [id=" + id + ", name=" + name + ", ctime=" + ctime
+ ", remark=" + remark + ", total=" + total + ", ausize="
+ ausize + "]";
}
@Override
public int compareTo(TapeGroup o) {
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//小写的mm表示的是分钟
String ctime2 = o.getCtime();
int compareTo = 0;
try {
Date parse2 = sdf.parse(ctime2);
Date parse = sdf.parse(ctime);
compareTo = parse.compareTo(parse2);
} catch (ParseException e) {
e.printStackTrace();
}
return compareTo;
}
}
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
public class TestCompareBlog1 {
public static void main(String[] args) {
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//小写的mm表示的是分钟
List<TapeGroup> queryTapeGroup = new ArrayList<TapeGroup>();
TapeGroup tapeGroup1 = new TapeGroup();
tapeGroup1.setId("1");
tapeGroup1.setAusize("12mb");
tapeGroup1.setName("tapeGroup1");
tapeGroup1.setRemark("tapeGroup1");
tapeGroup1.setTotal("2T");
tapeGroup1.setCtime("2016-08-23 18:39:51.73");
TapeGroup tapeGroup2 = new TapeGroup();
tapeGroup2.setId("2");
tapeGroup2.setAusize("12mb");
tapeGroup2.setName("tapeGroup2");
tapeGroup2.setRemark("tapeGroup2");
tapeGroup2.setTotal("2T");
tapeGroup2.setCtime("2016-08-23 18:39:38.788");
TapeGroup tapeGroup3 = new TapeGroup();
tapeGroup3.setId("2");
tapeGroup3.setAusize("12mb");
tapeGroup3.setName("tapeGroup3");
tapeGroup3.setRemark("tapeGroup3");
tapeGroup3.setTotal("2T");
tapeGroup3.setCtime("2016-08-23 18:39:46.096");
queryTapeGroup.add(tapeGroup1);
queryTapeGroup.add(tapeGroup2);
queryTapeGroup.add(tapeGroup3);
Collections.sort(queryTapeGroup);
System.out.println(queryTapeGroup);
}
}
很明显这么比较的话需要在pojo中tay catch ,这有点不符合逻辑,自己想了个替代方法可是也觉得太low了
List<TapeGroup> sortGroup = new ArrayList<TapeGroup>();sortGroup.addAll(queryTapeGroup);for(TapeGroup tapeGroup :queryTapeGroup){String ctime = tapeGroup.getCtime();Date date = sdf.parse(ctime);int count = 0;for(TapeGroup tapeGroupA :queryTapeGroup){String ctimeA = tapeGroupA.getCtime();Date dateA = sdf.parse(ctimeA);int compareTo = date.compareTo(dateA);if(compareTo < 0){count ++;}}sortGroup.set(count, tapeGroup);
}
System.out.println(sortGroup);
<pre name="code" class="java"><strong><span style="font-size:18px;">大牛给点建议啊!!!</span></strong>
- pojo的排序问题疑问
- 插入排序的疑问
- List<Pojo>按pojo对象的属性排序
- 关于pojo发布webservice出现的问题
- [问题]python的转义的一个疑问
- 关于疑问与结论的问题
- 疑问:有关删除LICENSE.LICX的问题
- 疑问:自己写代码遇到的问题
- 关于汉诺塔问题的一个疑问
- oracle数据库时间问题的一个疑问
- 【疑问】:phpmyadmin修改root的问题
- [问题]正则中\b的疑问
- java POJO实现类比较器Comparable的排序规则
- Java中对ArrayList中POJO的排序
- 归并排序疑问
- 几种快速排序的几点疑问
- Linux疑问---------文件系统的疑问---?????
- structs2的POJO类的属性不存在问题
- 双飞翼和圣杯布局
- SPS、PPS、IDR
- MD5加密
- 简单的imageloader
- SQL语言总结
- pojo的排序问题疑问
- 学习计划-16.09.21
- Convert Sorted Array to Binary Search Tree——Difficulty:Medium
- [整理]-iOS- 原生二维码的扫描实现
- HDU 5898 基础数位DP
- 数据库入门之增删改查
- CentOS 6.3(x86_64)下安装Oracle 10g R2
- 内存不足引起的SIGKILL:一个缓冲区不断增长问题的定位与解决(解释SIGKILL原因)
- Mysql Join语法解析与性能分析