6

是否有一个库已经提供了我们在 Java 中的命令模式所需的接口?

例如:

 public interface Func1<T,R> { public R execute(T input); }

 public interface Func2<T1,T2,R> { public R execute(T1 input1, T2 input2); }

 public interface Predicate1<T> { public boolean execute(T input); }

 ....

谢谢。

4

1 回答 1

6

Guava有你的第一个和第三个接口(称为Functionand Predicate)。您的第二个,恕我直言,没有用,因为您只需将 T1 和 T2 组合在一个对象中,并改用第一个接口。

更有趣的是,Guava 还有很多使用这两个接口的方法,比如Iterables.any(Iterable, Predicate),Iterables.transform(Iterable, Function)等。

于 2012-05-01T22:10:07.420 回答