当前位置:  开发笔记 > 编程语言 > 正文

通过参数中的方法调用方法

如何解决《通过参数中的方法调用方法》经验,为你挑选了1个好方法。

如何调用通过Java 8中的方法中的参数传递的方法?

小例子我有这样的方法:

void output(String text) {
    System.out.println(text)
}

现在我想将该方法传递给另一个应该调用output和设置文本内容的类.那可能吗?



1> marstran..:

要传递函数的类必须采用类型的参数Consumer.此类表示一个函数,它接受某种类型的参数(String在本例中),并具有返回类型void.A Consumer有一个accept获取参数并调用函数的方法.

你可以像这样创建你的类:

class Test {
    Test(Consumer consumer) {
        consumer.accept("This is a string!");
    }
}

现在,当您想要实例化此类时,您需要将您的函数传递给它,如下所示:

Test t = new Test(this::output);

::符号被称为方法参考.在this(前冒号)意味着该方法位于你所在的对象,它是可以改变的,例如,MyClass::output如果它是一个静态方法MyClass,或者myObject::output如果它是对象的一个方法myObject.

推荐阅读
mobiledu2402851373
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有