[英]Generic function as functional interface?
我有以下函數,該函數返回與傳遞的List
類型相同的List
。
<T> List<T> foo(T bar)
{
...
}
除了Java Functional Interface的形式之外,我希望具有相同的功能。 我嘗試了以下方法:
final <T> Function<T, List<T>> foo;
但是它不喜歡<T>
。 如果我像這樣省略<T>
:
final Function<T, List<T>> foo;
它聲稱找不到類型T
,與我將原始函數定義為完全相同的錯誤是:
List<T> foo(T bar) // cannot find type 'T'
{
...
}
我想將函數foo
作為一流的函數。
您將方法與類混淆, 該類可能實現為lambda 。
如果T
在代碼上下文中不是類型,則不能鍵入任何內容。
你可以這樣做:
class MyClass<T> implements Function<T, List<T>> {
public List<T> accept(T t) {
// some impl
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.