java的list排序需要实现import java.util.Comparator;
需求排序用户实体类User,user如下 :
public class User {
private long id;
private String userName;
private String pwdName;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPwdName() {
return pwdName;
}
public void setPwdName(String pwdName) {
this.pwdName = pwdName;
}
}
在创建一个排序的方法类,该类需要实现import java.util.Comparator;
具体代码:
public class ValComparator implements Comparator<User> {
@Override
public int compare(User arg0, User arg1) {
int ret = 0;
if (arg0.getId() > arg1.getId()) {
ret = 1;
} else {
ret = -1;
}
return ret;
}
}
测试代码:
public class TestListSort {
public static void main(String[] args) {
List<User> ret = new ArrayList<User>();
for (int i = 0; i < 10; i++) {
long id = (long) (Math.random() * 100);
String userName = "xutao_" + id;
String pwdInfo = "ssssss_" + id;
User user = new User();
user.setId(id);
user.setPwdName(pwdInfo);
user.setUserName(userName);
ret.add(user);
}
Collections.sort(ret, new ValComparator());
for (int i = 0; i < ret.size(); i++) {
System.out.println("id:" + ret.get(i).getId() + "___userName:" + ret.get(i).getUserName() + "___userPwd:"
+ ret.get(i).getPwdName());
}
}
}
测试结果: