繁体   English   中英

如何将Lambda表达式更改为方法参考

[英]How to change lambda expression to method reference

我需要有关将lambda表达式更改为方法参考的帮助:

lambda表达式:

intervalCodes.stream().forEach(code -> {
            modProfile.addIntervalUsageCode(createIntervalCode(code));
          });

我可以将上面的表达式更改为这样:

intervalCodes.stream().forEach(modProfile::addIntervalUsageCode(createIntervalCode));

有什么建议吗?

假设createIntervalCode()是没有副作用的实例方法,则可以将lambda拆分为两个方法引用:

intervalCodes.stream()
        .map(this::createIntervalCode)
        .forEach(modProfile::addIntervalUsageCode);

如果是静态方法,请使用ClassName::createIntervalCode

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM