(Java 8) java.util.function.Supplier

在下面的代码中,我尝试调用带有供应商的 info 方法。(info 方法被重载:一个接受一个字符串,另一个接受一个供应商。)编译器抱怨“方法 info(String) 不适用于参数Supplier<Double>”。我的期望是通过发送一个供应商对象来调用获取供应商的信息方法。我能得到一些帮助来理解这个错误吗?


Supplier<Double> randomSupplier = new Supplier<Double>()

{   public Double get()

    {   return Math.random(); }    

};


logger.info(randomSupplier); <----


慕神8447489
浏览 389回答 2
2回答

猛跑小猪

您可以尝试这种方式进入Supplierjava 8方式并通过转换Supplier为StringSupplier<Double> randomSupplier = () -> Math.random();info(randomSupplier);&nbsp; private void info(Supplier<Double> randomSupplier) {&nbsp; &nbsp; System.out.println(randomSupplier.get());&nbsp;}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java