有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java RxJava函数编程:如何使用适当的参数调用匿名函数

RxJava的开始未来(…)获取一个Func0(不带参数的函数),该函数返回未来

但是,我有一个接受3个参数的函数,可以用Func3<type, type, type, Future>表示。我编写了这个函数,它应该关闭Func3并作为Func0的结果返回:

public Func0 convertToFunc0(final Func3<type 1, type 2, type 3, Future> f)
{
    return new Func0() {
        @Override
        public void call() {
            f.call(???);
        }
    };
}

假设我已经为“type 1”、“type 2”等插入了适当的类型,那么我如何访问f的参数,以便对它们进行“关闭”?关于RxJava的功能部分,我确实找不到任何文档,我也查看了源代码,但还没有找到任何地方


共 (1) 个答案

  1. # 1 楼答案

    怎么样

    public Func0 convertToFunc0(final Func3<type 1, type 2, type 3, Future> f, final type1 param1, final type2 param2, final type3 param3)
    {
        return new Func0() {
            @Override
            public void call() {
                f.call(param1, param2, param3);
            }
        };
    }
    

    如果param1param2param3不是线程安全的,则需要注意潜在的争用条件