method-reference相关内容

Java8方法引用用作Function对象来组合函数

Java8中是否有办法使用方法引用作为 Function 对象来使用其方法,如: Stream.of(“ciao”,“hola”,“hello”) .map(String :: length.andThen(n - > n * 2) )) 此问题与 Stream ,它只是用作例子,我想对方法参考有答案 解决方案 你可以写一个静态的执行此操作的方法: i ..
发布时间:2018-12-06 14:57:59 Java开发

Java 8数组构造函数引用如何工作?

假设我们有一个类型 IntFunction 的变量,它返回一个整数数组: IntFunction< INT [] GT;一世; 使用Java 8泛型,可以使用如下构造函数引用初始化此变量: i = int [] :: new Java编译器如何将其转换为字节码? 我知道其他类型,如字符串: :new ,它可以使用 invoke ..
发布时间:2018-12-06 13:43:14 Java开发

在Java8中引用具有不同参数的方法

我想知道所有这些方法参考和功能接口如何在较低级别上工作。 最简单的例子是我们有一些List List list = new ArrayList(); list.add(“b”); list.add(“a”); list.add(“c”): 现在我们想用收藏夹对它进行排序class,所以我们可以调用: Collections.so ..
发布时间:2018-12-05 11:20:37 Java开发

是否可以将方法引用转换为MethodHandle?

是否可以将方法引用(例如 SomeClass :: someMethod )转换为 MethodHandle 实例?我想要编译时检查的好处(确保存在类和方法)以及使用 MethodHandle API对方法进行内省的能力。 用例:当且仅当请求不是由特定方法触发时(以避免无限递归),我才需要执行代码。我想进行编译时检查以确保类/方法存在但运行时检查以将调用者与方法进行比较。 所以回顾一下 ..
发布时间:2018-12-04 12:49:41 Java开发

Java 8中的实例方法引用类型之间有什么区别?

因此,Java 8引入了方法引用,文档描述了这四种类型。 / p> 我的问题是两种实例类型之间有什么区别? 引用特定对象的实例方法。 引用特定类型的任意对象的实例方法。 两者都是指引用,但有什么显着不同?用于解决它们的类型推断是不同的吗?重要的是(在他们的例子中)一个是闭包而另一个是lambda?是否与方法的参数数量有关? 解决方案 1) myString :: cha ..
发布时间:2018-11-27 21:20:59 Java开发

Java 8:方法引用Bound Receiver和UnBound Receiver之间的区别

我正在尝试在我的代码中使用Java 8方法引用。有四种类型的方法参考可用。 静态方法参考。 实例方法(绑定接收器)。 实例方法(UnBound接收器)。 构造函数引用。 随附静态方法引用和构造函数引用我没有问题,但实例方法(绑定接收器) 和实例方法(UnBound接收器)让我很困惑。在 Bound 接收器中,我们使用Object引用变量来调用如下方法: objectRef ..
发布时间:2018-11-27 12:57:02 Java开发

Java 8中的方法引用是否具有具体的类型,如果是,它是什么?

这个问题与另一个问题密切相关。但是,我觉得这个问题的接受答案并不完全确定。 所以,是中的方法引用的类型Java 8?这里有一个演示如何将一个方法引用“转换”(解除)到一个 java.util.function.Function 中: package java8.lambda; import java.util.function.Function; public cla ..

java 8中构造函数的用法是什么?

我正在阅读有关Java 8功能的内容,这些功能将我引导至文章,我想知道构造函数参考的实际用法,我的意思是为什么不使用 new Obj ? PS,我尝试了谷歌搜索,但是我没有找到有意义的东西,如果有人有代码示例,链接或啧啧声将会很棒。首先,你应该明白构造函数引用只是方法引用的一种特殊形式。关于方法引用的一点是,它们不会调用被引用的方法,而是提供一种方法来定义一个函数,它在被评估时将调用该方法。 ..
发布时间:2018-04-18 15:15:45 其他开发

方法参考的组成

这与此问题有关:功能组合如何? 我注意到方法引用可以分配给声明为 Function 的变量,所以我认为它应该有 andThen 或 compose 函数,因此我希望我们可以直接编写它们。但是显然我们需要将它们分配给一个声明为 Function 的变量(或者在调用之前键入转换),然后我们可以调用和Then 或撰写。 我怀疑我可能对这个工作有一些误解。 / p> 所以我的问题: ..
发布时间:2017-07-29 20:46:31 Java开发

可怕的性能Java 8构造函数引用的大堆占用空间?

我只是在我们的生产环境中有一个相当不愉快的经历,导致 OutOfMemoryErrors:heapspace .. 跟踪问题,我使用 ArrayList :: new 在一个函数。 要验证这是实际执行通过声明的构造函数( t - > new ArrayList())比正常创建更糟糕,我写了以下小方法: public class TestMain { public stat ..
发布时间:2016-12-30 15:33:14 Java开发