在Java中,我有以下lambda表达式:
Function<? extends Number, Boolean> f = i -> true;
接下来我想以以下方式使用这个lambda:
public <T extends Number> Boolean use(T n) {
return f.apply(n);
}
但编译器报错“不兼容的类型:T 无法转换为 ? extends java.lang.Number 的 capture#1”,那么出现这种错误的原因是什么,我该如何使用我定义的函数呢?