java - 如何将 lambda 表达式重构为方法引用?

标签 java intellij-idea lambda java-8 refactoring

我的代码是这样的:

class A {
    public void m() {
        Arrays.stream("a", "b")
            .map(x -> x + "!") // <-- lambda expression
            .forEachOrdered(System.out::println);
    }
}

我想将其重构为:

class A {
    public void m() {
        Arrays.stream("a", "b")
            .map(this::t) // <-- method reference
            .forEachOrdered(System.out::println);
    }

    public String t(String x) {
        return x + "!";
    }
}

我如何使用 IntelliJ 进行重构?

最佳答案

选择 lambda,按 Alt+Enter,单击“Extract to Method Reference”。

关于java - 如何将 lambda 表达式重构为方法引用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48458971/

相关文章:

lambda - 试图了解Kotlin示例

c# - 如何分解一系列成员访问表达式?

Python3 使用 lambda 对嵌套字典的列表进行排序

java - 如何使用 swt.TabItem 添加关闭按钮?

java - 从intellij上的tomcat获取错误404

spring - Intellij Idea 中的 HQL 编辑器

java - 观察点 : don't break if triggered from specific method

java - Spring MVC : default view objects

java - 如何在 IntellIJ 控制台 (2019.3) 中使用 ANSI 颜色输出?

java - 一个简单的java代码中的一些错误