gpt4 book ai didi

lambda - 可以将以下 java 代码转换为 Lambda 表达式吗?

转载 作者:行者123 更新时间:2023-12-01 12:05:52 26 4
gpt4 key购买 nike

我需要知道以下代码可以转换为 lamda 表达式。

private class K<D extends BaseDose<I>, I extends DoseInstance>
implements Predicate<Prescription<D, I>>
{
@Override
public boolean test(final Prescription<D, I> input)
{
return DepositType.DATE == input.getBaseDeposit().getDepositType();
}
}

最佳答案

而不是创建一个实现 K 的类(您的 Predicate<Prescription<D, I>> 类) ,您可以将 lambda 表达式分配给 Predicate变量。

例如:

Predicate<Prescription<BaseDose<DoseInstance>, DoseInstance>> pred =
p -> DepositType.DATE == p.getBaseDeposit().getDepositType();

如果你需要一个包含多个语句的 lambda 表达式,你可以这样写:

Predicate<Prescription<BaseDose<DoseInstance>, DoseInstance>> pred =
p -> {
final SigningStatus signingStatus = p.getSigningStatus();
return !p.isReplacedByLatest() && SigningStatus.INVALIDATED.equals(signingStatus);
};

尽管这可以简化为一条语句:

Predicate<Prescription<BaseDose<DoseInstance>, DoseInstance>> pred =
p -> !p.isReplacedByLatest() && SigningStatus.INVALIDATED.equals(p.getSigningStatus());

关于lambda - 可以将以下 java 代码转换为 Lambda 表达式吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57051479/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com