java编程如何将对象数组按对象中的某一个属性进行排序
来源:互联网 发布:ubuntu虚拟机增加硬盘 编辑:程序博客网 时间:2024/06/18 09:46
在我们现实生产中我们手中获得的数据并不一定就是我们想要的数据,因此我们经常要对其进行加工、锤炼,闲话少说,今天我们谈一下如何将对象数组按对象中的某一个属性进行排序。
主要用到的技术是java中 java.util.Collections以及 java.util.Comparator 类。具体例子如下:
public class Dto {
private String name;
private int statu;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getStatu() {
return statu;
}
public void setStatu(int statu) {
this.statu = statu;
}
Dto(String name , int statu){
this.name = name;
this.statu = statu;
}
@Override
public String toString() {
return "Dto [name=" + name + ", statu=" + statu + "]";
}
}
比较类
import java.util.Comparator;
public class SortCom implements Comparator{
public int compare(Object o1, Object o2) {
int firstStatus = ((Dto) o1).getStatu();
int secondStatus = ((Dto) o2).getStatu();
int dif = firstStatus - secondStatus;
if (dif > 0)
return 1;
else if (dif < 0)
return -1;
else
return 0;
}
}
测试类
public static void main(String[] args) {
List<Dto> dtos = new ArrayList<Dto>();
Dto dto1 = new Dto("wwww",4);
Dto dto2 = new Dto("qqqq",5);
Dto dto3 = new Dto("aaaa",2);
Dto dto4 = new Dto("eeee",9);
Dto dto5 = new Dto("rrrr",6);
Dto dto6 = new Dto("tttt",4);
dtos.add(dto1);dtos.add(dto2);dtos.add(dto3);dtos.add(dto4);dtos.add(dto5);dtos.add(dto6);
System.out.println("---------排序前");
for(Dto c : dtos){
System.out.println(c.toString());
}
Collections.sort(dtos, new SortCom());
System.out.println("---------排序后");
for(Dto c : dtos){
System.out.println(c.toString());
}
}
测试结果:
---------排序前
Dto [name=wwww, statu=4]
Dto [name=qqqq, statu=5]
Dto [name=aaaa, statu=2]
Dto [name=eeee, statu=9]
Dto [name=rrrr, statu=6]
Dto [name=tttt, statu=4]
---------排序后
Dto [name=aaaa, statu=2]
Dto [name=wwww, statu=4]
Dto [name=tttt, statu=4]
Dto [name=qqqq, statu=5]
Dto [name=rrrr, statu=6]
Dto [name=eeee, statu=9]
- java编程如何将对象数组按对象中的某一个属性进行排序
- 根据数组中对象的某一个属性值进行排序
- Java中如何把一组对象按照其某一个属性值进行排序?详见补充:
- Java中如何把一组对象按照其某一个属性值进行排序?
- js 按照对象某一个属性进行排序
- js sort方法根据数组中对象的某一个属性值进行排序
- javaScript中使用 sort方法根据数组中对象的某一个属性值进行排序
- js sort方法根据数组中对象的某一个属性值进行排序
- js sort方法根据数组中对象的某一个属性值进行排序
- javascript中使用 sort方法根据数组中对象的某一个属性值进行排序
- js sort方法根据数组中对象的某一个属性值进行排序
- 根据list对象的某一个属性进行排序
- 根据某一属性对数组中的对象进行排序
- 两种根据数组中对象的某一个属性值对数组进行重新排序的方法
- JAVA 对象数组按照多个属性进行排序
- 数组排序(按对象中某个属性进行排序)
- 使用comparator 将对象数组进行排序
- 对象数组根据单个属性进行排序
- Java中的字符串大小比较
- 写在技术博文前
- Flex 打包代码到swc中
- js得到某个日期的年、月、日、时、分、秒
- jQuery数据显示插件整合实现代码
- java编程如何将对象数组按对象中的某一个属性进行排序
- 2013年1月24日 工作总结
- php性能加速器
- Nginx Rewrite研究笔记
- getElementByID和getElementsByName和getElementsByTagName和document.all的区别
- c/c++实现获取NOD32升级账号密码
- JS动态增加删除UL节点LI及相关内容
- 接口介绍
- C++ ofstream和ifstream详细用法