我有一个这样的 Java-8-FunctionalInterface:
@FunctionalInterface
public interface A {
void doIt ();
}
Function-Interface 提供了一个-Method compose。我想用它来减少这样的流A:
Stream<A> as;
A composed = as.reduce (() -> {}, Function::compose);
结果我想要一个函数A,它调用每个AStream 的方法doIt。
composed.doIt (); // Executes every doIt ()
但是因为 A不是的实现者Function,所以方法引用Function::compose在那里是不可能的。我不能从Function(或Supplier)扩展,因为那样我将有两个抽象方法(我自己的和一个来自Function)。
我可以做些什么来使我的功能成为可能A?