[英]How to use a method reference inside an Optional.map()
我有一個可選的。
Optional<AssetEvent> latestEvent = ...
我想從事件內部添加一個字段到列表(如果存在)。
latestEvent.map(event -> event.getTimestamp()).ifPresent(latestList::add);
我的IDE(Intelij)在event.getTimestamp()
上向我顯示“Lambda可以替換為方法引用”
重構為
latestEvent.map(this::getTimestamp).ifPresent(latestList::add);
給我一個錯誤,因為this
將引用代碼執行的周圍的對象。 如何在Optional latestEvent
Object的方法
使用班級名稱。 例如:
latestEvent.map(AssetEvent::getTimestamp).ifPresent(latestList::add);
假設AssetEvent
是具有getTimestamp
方法的類的名稱。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.