Java8 stream sorted排序时包括null

时间:2025-04-09 08:42:06
List<User> list = (new User("Y", "YY"), new User("A", "AA"), new User(null, "CC"));
().forEach(::println);
("------------------------------");
 
List<User> nList = ().sorted(
    (User::getCode, (String::compareTo)))
    .collect(());
().forEach(::println);
 
 
 
 
out:
 
Y---YY
A---AA
null---CC
------------------------------
null---CC
A---AA
Y---YY
  class User {
    public User(String code, String name) {
      = code;
      = name;
    }
 
    private String code;
    private String name;
 
    public String getCode() {
      return code;
    }
 
    public void setCode(String code) {
      = code;
    }
 
    public String getName() {
      return name;
    }
 
    public void setName(String name) {
      = name;
    }
 
    @Override
    public String toString() {
      return code + "---" + name;
    }
  }