Java对List中的实体类中的特定字段排序

public class User implements Comparable<User> {//实现此接口
private String id;
private String name;


public User(String id, String name) {
    super();
    this.id = id;
    this.name = name;
}


public String getId() {
    return id;
}


public void setId(String id) {
    this.id = id;
}


public String getName() {
    return name;
}


public void setName(String name) {
    this.name = name;
}


@Override
public String toString() {
    return "User [id=" + id + ", name=" + name + "]";
}


@Override
public int compareTo(User o) {
    // TODO Auto-generated method stub
    int flag = this.id.compareTo(o.id);
    
    return flag;
}

测试:

   List<User> alist= new ArrayList<>();
       alist.add(new User("1","b"));
       alist.add(new User("4","a"));
       alist.add(new User("3","c"));
       alist.add(new User("2","d"));
       Collections.sort(alist);
       System.out.println(alist);

得到结果:

[User [id=1, name=b], User [id=2, name=d], User [id=3, name=c], User [id=4, name=a]]


 

猜你喜欢

转载自blog.csdn.net/bingguang1993/article/details/81367311