此方法比较两个字符串。其中之一来自一个物体。如果字符串匹配,则对象返回 id。
private static Long getDefaultKag(Long mandandId) {
List<MandantKagAccountEntity> mandantKagAccountEntities = new MandantKagAccountManager().findAllKags(mandandId);
for (MandantKagAccountEntity mandantKagAccountEntity : mandantKagAccountEntities) {
if (mandantKagAccountEntity.getKagText().equals("Default_kag")) {
return mandantKagAccountEntity.getMandantKagId();
}
}
return null;
}
有什么办法可以用流来解决这个问题吗?我的方法,但我无法进一步。
private static long getDefaultKag(Long mandandId) {
return new MandantKagAccountManager().findAllKags(mandandId).stream()
.filter(m -> m.getKagText().equals("Default_Kag"))
...
...
...
}
你知道如何解决这个问题吗?我还想知道这两种变体中哪一种对于大量数据更有效。
最佳答案
替换
...
...
...
与
.map(MandantKagAccountEntity::getMandantKagId)
.findFirst()
.orElse(null);
关于java - 有没有办法使用java流来比较两个字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57608633/