Java優雅な実現sort

592 ワード

lambdaの実装を必要としない
List list = new ArrayList<>();
list.sort(new Comparator() {
  @Override
  public int compare(Human h1, Human h2) {
    return h1.getName().compareTo(h2.getName());
  }
});

Lambdaの最初の方法を使用する
list.sort((final Human h1, final Human h2) -> h1.getName().compareTo(h2.getName()));

Lambdaの2つ目の方法を使用する
list.sort((h1, h2) -> h1.getName().compareTo(h2.getName()));

Comparatorによる実装
list.sort(Comparator.comparing(Human::getName));