gpt4 book ai didi

ios - CoreData 通过属性总和而不是单个记录进行奖励

转载 作者:行者123 更新时间:2023-11-29 05:48:33 24 4
gpt4 key购买 nike

我正在开发一款应用程序,当用户记录步行、骑自行车或乘坐公共(public)汽车时,该应用程序会奖励用户。他们在每次旅程达到一定距离后会获得奖励,但我想根据他们使用 CoreData 通过应用程序记录的总距离进行奖励。

我尝试查看有关同一主题的其他 Stack Overflow 问题,但到目前为止尚未成功

for journey in journeys where journey.distance > reward.distance {
if earned == nil {
earned = journey
}

最佳答案

你的要求有点令人困惑。要检查某些元素的总和是否大于某个值,最好在 swift 中使用 reduce 。类似于以下内容:

private func checkRewardAchieved(_ reward: Reward, withJourneys journeys: [Journey]) -> Bool {
return journeys.reduce(0.0, { $0 + $1.distance }) >= reward.distance
}

此处 journeys.reduce(0.0, { $0 + $1.distance }) 将返回数组中所有距离的总和。然后将总和与奖励>=reward.distance进行比较,结果要么为真,要么为假。

不过,直接使用核心数据计算总和可能会更好。这样做this answer看起来很有希望。

关于ios - CoreData 通过属性总和而不是单个记录进行奖励,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55900781/

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