java List集合中根据集合对象的属性值进行排序
来源:互联网 发布:openstack是什么知乎 编辑:程序博客网 时间:2024/04/29 15:28
//进行排序的实体对象
package com.compile;
public class User {
String name;
String age;
public User(String name,String age){
this.name=name;
this.age=age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
}
//用于排序处理的实体类,可以根据具体的属性参数和降序升序参数来动态处理list集合对象的数据
package com.compile;
import java.util.Comparator;
public class ComparatorUser implements Comparator{
public int paramType;
public int sortType;
public int getSortType() {
return sortType;
}
public void setSortType(int sortType) {
this.sortType = sortType;
}
public int getParamType() {
return paramType;
}
public void setParamType(int paramType) {
this.paramType = paramType;
}
public ComparatorUser(int paramType,int sortType) {
super();
this.paramType = paramType;
this.sortType = sortType;
}
public int compare(Object obj0, Object obj1) {
User user0=(User)obj0;
User user1=(User)obj1;
int flag = 0;
String msg="";
if(paramType==0){
msg="年龄";
if(sortType==0){//升序
flag = user0.getAge().compareTo(user1.getAge());
}else if(sortType==1){//降序
flag = user1.getAge().compareTo(user0.getAge());
}
}
if(paramType==1){
msg="姓名";
if(sortType==0){//升序
flag = user0.getName().compareTo(user1.getName());
}else if(sortType==1){//降序
flag = user1.getName().compareTo(user0.getName());
}
}
System.out.println("根据:"+msg+"----排序");
return flag;
}
}
//测试方法
package com.compile;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class TestUserSort {
public static void main(String[] args){
List userlist=new ArrayList();
userlist.add(new User("dd","4"));
userlist.add(new User("aa","1"));
userlist.add(new User("ee","5"));
userlist.add(new User("bb","2"));
userlist.add(new User("ff","5"));
userlist.add(new User("cc","3"));
userlist.add(new User("gg","6"));
//根据年龄降序排序
ComparatorUser comparator=new ComparatorUser(0,1);
Collections.sort(userlist, comparator);
for (int i=0;i<userlist.size();i++){
User user_temp=(User)userlist.get(i);
System.out.println(user_temp.getAge()+","+user_temp.getName());
}
}
}
- java List集合中根据集合对象的属性值进行排序
- java中根据集合属性进行排序
- Java面试题,List集合中根据对象的某一属性排序
- JAVA中根据集合中对象属性排序的方法
- List集合中的对象根据属性排序
- List集合中的对象根据属性排序
- List集合中的对象根据属性排序
- List集合中的对象根据属性排序
- List集合中的对象根据属性排序
- List集合中的对象根据属性排序
- List集合中的对象根据属性排序
- List集合中的对象根据属性排序
- List集合中的对象根据属性排序
- List集合根据存储对象的属性字段排序实现
- List集合中删除属性(一个或者多个属性)相同的对象且根据对象属性进行排序输出
- list集合中根据对象排序的问题
- 根据集合中 某两个属性 进行集合排序
- 对象集合list根据对象属性排序2015-8-16
- ubuntu12.04安装opencv3.2.0
- 误删除VMware虚拟机vmdk文件的恢复方法
- MULE 连接sap rfc接口开发二:调用rfc接口
- 使用Java原生代理实现数据注入
- java log4j配置详解
- java List集合中根据集合对象的属性值进行排序
- 青蛙过河问题
- CSS浮动
- 每天一个 Linux 命令(8):cp 命令
- linux设备驱动的中断
- HTTP协议研究
- shell常用命令解释--echo
- 上传文件 使用HTML5的FormData 提交表单和文件数据
- Redis常用命令