0
我有一個正在運行的Java應用程序,我正在更新以使用更多Java 8的功能。富有表現力的Java函數
我有一個Function
如下:
protected static Function<Notification,Notification>
coverpageNotification = n -> n
.withMessage("COVERPAGE MESSAGE")
.withDate(new Date());
,我現在把它用:
s = new HashSet<Notification>();
checkNotificationStatus(true, coverpageNotification.apply(new Notification()), s);
...
...
與其說coverpageNotification.apply(new Notification())
的,有沒有這樣做使用lambda表達式的更多表達方式?
這是智慧。爲了學習而爲了lambda表達式編寫lambda表達式是可以的,但實際上,它們的不必要的使用會使代碼難以讀取和維護。這裏使用函數+方法引用代替lambda表達式的習慣是很好的。我使用這兩種方法,並歸結爲最具可讀性和最多信息。方法引用中使用的函數名稱是一種正在進行的操作的文檔,如果lambda表達式不簡單明顯,那麼它可以比純粹的lambda更容易理解。 –