我有一个可选的。
Optional<AssetEvent> latestEvent = ...
如果存在,我想将事件内部的字段添加到列表。
latestEvent.map(event -> event.getTimestamp()).ifPresent(latestList::add);
我的 IDE (Intellij) 在 event.getTimestamp()
上向我显示“Lambda 可以用方法引用替换”
重构为
latestEvent.map(this::getTimestamp).ifPresent(latestList::add);
给我一个错误,因为 this
将在执行代码时引用周围的对象。如何在 Optional latestEvent
最佳答案
使用类名。例如:
latestEvent.map(AssetEvent::getTimestamp).ifPresent(latestList::add);
假设 AssetEvent
是具有 getTimestamp
方法的类的名称。
关于java - 如何在 Optional.map() 中使用方法引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53651158/