我有一个工作的Java应用程序,我希望更新以使用更多Java 8的功能。
我有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())
,而是使用lambdas更有表现力吗?
答案 0 :(得分:1)
没有更具表现力的语法来调用Function.apply()
除此之外,你想用lambda做什么? 在目前的形式中,这与简单的方法相比没有任何优势:
static Notifaction addCoverPage(Notifaction n){
return n.withMessage("COVERPAGE MESSAGE")
.withDate(new Date());
}
和
checkNotificationStatus(true, addCoverPage(new Notification()), s);
如果您在某些时候仍需要某个功能,您也可以将该方法转换为一个:
Function<Notification,Notification> x = SomeClass::addCoverPage;