※ 引述《james732 (好人超)》之銘言:
: 使用IDE:Android Studio 1.2.1.1
: 我有一個class:
: class MyData
: {
: public int i, j, k, l, m, n, o; // 七組資料
: };
: 然後有個 List 裝了很多個 Data
: List<MyData> dataList = new ArrayList<MyData>();
: 我希望讓使用者可以選擇根據i,j,k,l,m,n,o的某一項來排序list,所以寫了
: Collections.sort(dataList, new Comparator<MyData>() {
: @Override
: public int compare(MyData lhs, MyData rhs) {
: return (lhs.i > rhs.i);
: }
: }
: 同樣的內容寫了七次,就只有上面紅色的部份不同
: 雖然程式看起來可以正常運作,但自己都覺得那一堆實在累贅....
: 想請問有沒有其他辦法可以讓我重覆的code不要那麼多呢?變得更加簡潔
: (假如無法使用lambda...我還在研究Android studio能不能用...)
使用 retroleambda 的話,可以使用 Java 8 寫程式碼,而執行可以在 Java 7 以前
的 JVM 上,也就是說,可以用 Lambda 寫程式碼,最後仍能於 Java 7 以前或
Android 上 …
http://www.slideshare.net/JustinSDK/java-8-retrolambda
http://ingramchen.io/blog/2014/10/retromlambda.html