たとえば、次のような屬性を持つクラス User
が必要です。 private int age、private String name
いくつかのオブジェクトがあります
今度は年齢の昇順にソートしたい、つまりlisrの最終的な表示結(jié)果が user1 user3 user2
java8のラムダ式を使ってどのように書くのでしょうか?
これは user に似たクラスで、內(nèi)部の count 値を比較することで機能を?qū)g現(xiàn)できますが、括弧內(nèi)のコードが灰色なのはなぜでしょうか。
マウスを上に移動します。 ReportComparator.comparingInt で置き換えることができます... (Ctrl F1)
溫故而知新,可以為師矣。 博客:www.ouyangke.com
上の階のものはフレンドリーではありません。次のメソッドは、古い命令型ではなく、より宣言的です。 リーリー
このように読みやすくなりませんか?をベースにコンパレーターを作成しました。降順が必要な場合は、それを逆にしてください。
リーリー
User
的age
屬性進行個排序,屬性是int就按照int排序,其實Comparator.comparing(User::getAge)
とても快適です…笑
Arrays.sort(list, (user1 , user2) -> Integer.compare(v1.age, v2.age));
私の意見では、Comparable インターフェースを?qū)g裝してから、sort を直接呼び出す必要があります