gpt4 book ai didi

Java 8 流 : For Each

转载 作者:行者123 更新时间:2023-12-03 18:42:03 28 4
gpt4 key购买 nike

你能帮我使用 Java 8 流 API 编写以下代码吗?

SuperUser superUser = db.getSuperUser;
for (final Client client : superUser) {
if (cartData.getClient().equals(client.getUid())) {
client.setIsSelected(true);
break;
}
}

感谢您的帮助!

最佳答案

除了另一个答案,我想补充一点,每次在循环中调用 cartData.getClient() 是次优的,而不是在循环开始之前缓存它,如图所示下面:

T tempClient = cartData.getClient();  // where T is the type returned by getClient()

然后你可以这样做:

  superUser.stream()  // or Arrays.steam(superUser) if superUser is an array
.filter(c -> tempClient.equals(c.getUid()))
.findFirst()
.ifPresent(client -> client.setIsSelected(true));

或:

superUser.stream() // or Arrays.steam(superUser) if superUser is an array
.filter(c -> tempClient.equals(c.getUid()))
.limit(1)
.forEach(client -> client.setIsSelected(true));

关于Java 8 流 : For Each,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49833461/

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