Java中是否有任何标准的通用“回调”或“函数/方法”类型,如.NET中的System.Action<T>
或System.Func<T,U>
?
在我的具体情况中,我需要一个包含一个方法的类,该方法接受T
类型的一个(通用)参数并且不返回任何内容(即void
)。
是的,为我自己创建这样的类/接口很容易,但如果有的话,我更喜欢标准库类。
答案 0 :(得分:12)
我不相信标准库中有这样的东西,没有(在撰写本文时,2010年)。其他图书馆有它们 - 像Guice的Provider<T>
和Guava的Function<F, T>
,Supplier<T>
和Predicate<T>
...所以如果你已经使用了库,你可能想看一下他们在这方面提供了什么。
(编辑:如上所述,这些是返回内容的接口 - 与Func<T, U>
非常相似,但不与Action<T>
类似。)
答案 1 :(得分:2)
Java标准库不提供任何此类。
您可以使用提供fj.F1<T, fj.Unit>
的{{3}}库,它基本上等同于.NET中的System.Action<T>
。