什么';Java Util函数和Collections4 Transformer之间的区别是什么?

什么';Java Util函数和Collections4 Transformer之间的区别是什么?,java,Java,接口的区别是什么: 他们不是在做类似的动作吗 T-->做事-->R 假设我有一个用户对象,我想让其中一个接口将登录名作为该对象的字符串返回给我。我可以两者都用吗 @Override public String apply(User user) { return user.getLoginname(); } 或 有什么区别 名字 他们不是在做类似的事情吗 对 我可以两者都用吗 @Override public String apply(User u

接口的区别是什么:

他们不是在做类似的动作吗

T-->做事-->R

假设我有一个
用户
对象,我想让其中一个接口将
登录名
作为该对象的
字符串
返回给我。我可以两者都用吗

@Override
    public String apply(User user) {
        return user.getLoginname();
    }

有什么区别

名字

他们不是在做类似的事情吗

我可以两者都用吗

@Override
    public String apply(User user) {
        return user.getLoginname();
    }
当然可以,但为什么要依赖于是否可以使用内置类型

有什么区别

名字

他们不是在做类似的事情吗

我可以两者都用吗

@Override
    public String apply(User user) {
        return user.getLoginname();
    }

当然可以,但是为什么要依赖于是否可以使用内置类型呢?

这两个接口具有相同的功能——它们以某种类型的对象作为输入,并返回某种类型(可能不同)的对象
Transformer
的文档范围稍窄,在某种意义上,“计算的转换”对我来说是“计算的函数”的一种特殊情况,但这一点很弱

这些接口之间最重要的区别在于实例如何与其他对象一起使用。它们不能互换。因此,如果要使用
转换列表
,则必须根据
转换器
,而不是
函数来定义它。如果要从
获取
平面图
,则需要
函数
,而不是
转换器


但是,由于它们基本上只是同一想法的不同名称,因此编写一个适配器使您能够在需要另一种类型的上下文中使用一种类型是很简单的。

这两个接口具有相同的功能——它们将某个类型的对象作为输入,并返回某个可能不同类型的对象
Transformer
的文档范围稍窄,在某种意义上,“计算的转换”对我来说是“计算的函数”的一种特殊情况,但这一点很弱

这些接口之间最重要的区别在于实例如何与其他对象一起使用。它们不能互换。因此,如果要使用
转换列表
,则必须根据
转换器
,而不是
函数来定义它。如果要从
获取
平面图
,则需要
函数
,而不是
转换器


但是,由于它们基本上只是同一想法的不同名称,因此编写一个适配器使您能够在需要另一种类型的上下文中使用一种类型是很简单的。

快速区别:两个接口中的一个用注释,另一个没有注释。您很少直接@Override
apply()
函数。您只需使用
User::getLoginname
获取
函数
接口对象。哦,任何你可以
.compose()
。然后()
函数接口一个。快速区别:两个接口中的一个用注释,另一个没有。您很少直接@Override
apply()
函数。您只需使用
User::getLoginname
获取
函数
接口对象。哦,任何你可以
.compose()
。然后()
的功能接口。