纸牌游戏的 BiPredicate 规则 (Java)

BiPredicate rules for Cardgame (Java)

我在大学有一项任务,我似乎无法真正理解在不实现 Bipredicate 接口的情况下应该如何使用 BiPredicate 函数。
我必须使用这些代码行并添加到它们而不更改任何已经存在的内容:

public static BiPredicate<Card, Card> sameValueRule()
public static BiPredicate<Card, Card> sameSuitRule()
public static BiPredicate<Card, Card> increasingValueRule()
public static BiPredicate<Card, Card> jokerRule(Card joker)()

每张卡都有一个套件,值从 1 到 13。 Card.equals 和 .hashCode 方法已被覆盖为 return true 如果两张牌的套件和值相同。第一条和第二条规则应该说明只有具有相同 value/suite 的牌才可以玩。 Increasing Value 只允许打出更高价值的牌,而 jokerRule 只允许打出与 joker 牌相等的牌。
我不知所措,已经在这里坐了很长时间了。我希望有人能帮助我并提前谢谢你。

如果您的老师正在使用 Java 8 的新功能接口,他可能希望您使用 Java 8 的 lambda。 Here's a quick tutorial.