问题标签 [functional-interface]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
151 浏览

java - 如何使用包含完全相同类型但使用其​​他类型参数化的参数的参数列表按方法重载方法

我有一个方法:

尽管它们的参数是用不同类型参数化的,但我不能重载第一种方法。我可能会使用不同的界面,Function<T,R>但不知道哪一个就足够了,因为我浏览了它们的列表并且找不到一个https://docs.oracle.com/javase/8/docs/api/java/ util/function/package-summary.html

这些函数中的参数是:

flines- 从给定路径 () 读取文件String并返回该文件中的行列表 ( List<String>)

join- 连接给定的元素List<String>并返回一个String

collectInts- 解析给定String并返回在其中找到的整数列表String

sum- 添加元素List<Integers>并返回总和

问题:

  1. 我可以用第二种方法重载第一种方法吗?

  2. 除了功能之外,我还可以使用哪些其他现有功能接口?我认为没有,因为论点和结果的类型总是不同的。

0 投票
1 回答
149 浏览

java - 变量(函数类型)参数计数和变量返回类型

我有以下问题-我必须编写一种方法,该方法将采用可变数量的 Function 参数,并在此基础上返回所需的类型。问题是,参数中的函数按顺序运行:

如您所见,我需要创建一个类,该类将具有一个方法(不允许重载),并且基于该方法将接收的内容,它必须返回正确的类型。

我有 InputConverter 类的开头,但我不知道如何让下一个函数从之前的函数中获取参数。

我假设我可以做这样的事情?

0 投票
1 回答
570 浏览

java - FunctionalInterface 可以扩展非功能接口类吗?

我现在正在学习,我得到了一个简单的(我想是的)任务。我必须让这段代码工作(我不能修改它):

我相信 MousePressListener 应该是 FunctionalInterface,但是它不能扩展 MouseListener。有什么办法可以解决这个问题,还是我从不好的方面接近它?

0 投票
2 回答
371 浏览

java - 为什么没有 java.lang.ref.Reference实施供应商?

我正在查看这个类java.lang.ref.Reference(以及它的子类),我想知道为什么它没有实现 Java 8 的Supplier<T>接口。

看来这应该是不费吹灰之力。供应商的get()方法满足Reference。我犹豫要实现SoftReference<T>自己的扩展的唯一原因Supplier<T>是因为我知道References垃圾收集器是特殊情况。

制作这样的课程有什么问题可以预见吗

我不想以某种方式破坏 SoftReferences 的目的,因为一些垃圾收集警告会干扰供应商的处理方式。

顺便说一句,我知道SoftReferencesnull在完整的垃圾收集后返回。我的程序有需求SoftReferences,我想让它实现这个功能接口以增加灵活性。

0 投票
1 回答
859 浏览

java - 在功能接口中命名函数有什么意义?

我正在阅读本教程中的 Java 功能接口

这是困扰我的具体代码:

我不明白。有一个名为display(). 它不做任何事情,也从未定义过。是的,我知道当您在功能接口中调用单个方法时,它会执行在其中创建的 lambda 表达式中的代码。

但这是我的问题;如果所有函数式接口本质上都只是运行 lambda 表达式,那么为什么不节省我们命名单个方法的时间,并使其永久化exe()呢?如果它几乎没有添加任何内容,那么提供功能接口语法和自定义的意义何在。对我来说更好的语法是:

这更标准,更短,更容易理解。

这是一个绝妙的主意还是我错过了什么?

0 投票
1 回答
138 浏览

java - Java Stream::*Match 操作的通用声明

我想创建一个通用test()函数来演示Stream操作allMatchanyMatchnoneMatch。它可能看起来像这样(无法编译):

(我认为)我的挑战是定义matcher哪个可能需要是通用的,而不是我在这里做的方式。我也不确定是否可以拨打我在此处显示的电话main()

我什至不确定这是否可以做到,所以我会很感激任何见解。

0 投票
1 回答
173 浏览

java - 默认方法中的自动构造函数匹配

我有一个PersonFactory界面如下:

Person班级:

我希望能够Person像这样实例化我的 s:

有没有办法让 Java 编译器通过匹配的签名自动选择正确的构造函数PersonFactory.create()

0 投票
0 回答
191 浏览

java - Spring 4 @Cacheable 和来自 lambda 表达式的方法调用不起作用

为了调用一个方法,我使用带有 Lambda 表达式的 hashmap 来找出应该调用哪个方法来查找数据。问题是:如果我直接调用这个方法 - 缓存工作没有任何问题。但是,如果我从地图中获取此方法 - 不缓存所有内容。是否有可能修复它或 Spring Cache 不能用于这种情况?

这意味着:如果我直接调用方法 getKurForm - 它将被缓存,但如果我使用以下方法调用它:

比它会在数据库中搜索每个方法调用。

0 投票
4 回答
275 浏览

java - 在 lambda 中消除歧义的功能接口

假设:

lambda 表达式将默认为Callable.
有没有办法让它实例化 a Runnable

谢谢你的帮助。

0 投票
1 回答
263 浏览

java - How can I search a java code base for interfaces that have a single method?

A project I work on has recently switched from Java 7 to Java 8. I'd like to be able to find interfaces that have a single abstract method as candidates for introducing functional interfaces into our code base. (Annotating existing interfaces as @FunctionalInterface, extending them from the interfaces in java.util.function, or possibly just replacing them).