リストのソート方法
Javaでリストの特定のフィールドでソートを行う書き方の備忘録。value
フィールドはComparable
を実装しているものとする。
昇順にソートする場合
itemList.sort((item1, item2) -> item1.value.compareTo(item2.value));
itemList.sort(Comparator.comparing(item -> item.value));
// Collections.sort は List.sort に置換できますとクイックフィックスが表示される
Collections.sort(itemList, Comparator.comparing(item -> item.value));
降順にソートする場合
itemList.sort((item1, item2) -> item2.value.compareTo(item1.value));
itemList.sort(Comparator.comparing(item -> item.value, Comparator.reverseOrder()));
// Collections.sort は List.sort に置換できますとクイックフィックスが表示される
Collections.sort(itemList, Comparator.comparing(item -> item.value, Comparator.reverseOrder()));