我不知道为什么它不起作用。
日食中的错误消息: BiPredicate类型的方法test(Fruit,capture#1-of扩展了Fruit)不适用于参数(Fruit,Mango)
@ReactProp(name = SET_REPLAY, defaultBoolean = true)
public void setReplay(final VideoPlayerView player, boolean replay) {
Log.d(VideoPlayerViewManager.REACT_PACKAGE, "set replay: " + String.valueOf(replay));
player.setRepeat(replay);
}
答案 0 :(得分:3)
假设您将lambda表达式更改为:
BiPredicate<Fruit, ? extends Fruit> tester = (Fruit f, Apple nf) -> {
System.out.println(nf.name);
return true;
};
您是否仍希望编译器允许将Mango
传递到此BiPredicate
?
基于BiPredicate<Fruit, ? extends Fruit>
的编译时间类型-tester
-,编译器不知道是否允许Mango
,因此它不允许。
将您的BiPredicate
更改为:
BiPredicate<Fruit, ? super Fruit> tester = (f, nf) -> {
System.out.println(nf.name);
return true;
};
将消除编译错误。