使用GroFy的BiFunction参数调用Java8方法

时间:2016-08-08 11:22:09

标签: java groovy interop

我有一段使用Java8 CompletableFutures的Groovy代码:

       CompletableFuture<Integer> future1 = CompletableFuture.supplyAsync({
            Thread.sleep(1500)
            return 1
        })

        CompletableFuture<Integer> future2 = CompletableFuture.supplyAsync({
            Thread.sleep(1000)
            return 2
        })

        def closure = { Integer a, Integer b -> a + b }
        CompletableFuture<Integer> result = future1.thenCombineAsync(future2, closure)
        println(result.get())

问题是我无法在第二行的第二行调用thenCombineAsync。无论我做什么,编译器都不接受第二个参数,它必须是BiFunction,因为类型不匹配。我尝试了很多东西。任何能够实现这一目标的解决方案都非常受欢迎。

0 个答案:

没有答案