gpt4 book ai didi

java - 如何将复制构造函数作为方法引用传递?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:47:03 24 4
gpt4 key购买 nike

我有一个 PlanItemEditor 类。

我需要 E 项的复制构造函数。如何使用方法引用传递它?

public void initValues(ObservableList<E> srcList, E toEdit) {
indexToSet = srcList.indexOf(toEdit);
editing = new E(toEdit);
this.srcList = srcList;
}

我正在考虑包含一个一元函数作为参数,并从 E 类中传入一个方法,该方法完全是一个复制构造函数,但具有不同的名称签名。然而,这有点老套。

有更好的方法吗?

最佳答案

您可以使用:

public void initValues(ObservableList<E> srcList, E toEdit, UnaryOperator<E> copy) {
indexToSet = srcList.indexOf(toEdit);
editing = copy.apply(toEdit);
this.srcList = srcList;
}

你可以这样调用它:

initValues(srcList, toEdit, YourClass::new);

关于java - 如何将复制构造函数作为方法引用传递?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25500213/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com