gpt4 book ai didi

iphone - 如何根据对象的类别汇总获取结果的 number 属性?

转载 作者:行者123 更新时间:2023-11-29 04:43:12 25 4
gpt4 key购买 nike

我有一个NSFetchRequest,它返回我保存的所有对象(称为Item)并将它们存储在NSMutableArray中。每个 Item 都有类别、金额和一些其他属性。我的目标是检查每个 Item 的类别并存储同一类别对象的金额总和。因此,如果我有这些 Item:

  • 红色; 10.00
  • 蓝色; 20.00
  • 绿色; 5.00
  • 红色; 5.00
  • 绿色; 15.00

那么我将拥有一个数组或其他类型的容器:

  • 红色; 15.00
  • 蓝色; 20.00
  • 绿色; 20.00

以这种方式组织数据的最佳方式是什么?我打算创建一个仅包含类别的对象类(称为Totals)和金额。当我在 for 循环中遍历获取结果时,在 Totals 对象中添加具有相同类别的 Item,并将它们存储在 NSMutableArray 中>。我遇到的问题是,我不确定如何检查数组是否包含具有特定属性的 Totals 对象。具体来说,是一个已经存在的类别。因此,如果“Red”存在,请将金额添加到其中,否则创建一个新的 Totals 对象,其中包含类别“Red”和第一个 Item 的金额。谢谢。

最佳答案

要回答您的问题并为您提供在许多情况下证明有用的通用方法,您可以使用 [myObject isKindOfClass:aClass] 方法,然后使用 NSObject 的respondsToSelector: 方法。

如果您知道您将获得什么类型的数据..您只需实例化一个对象 Totals,其中 Red = 0、Blue = 0、Green = 0,然后相应地添加金额。

作为其他选项,您可以查看键值编码:link here

您可以使用 NSMutableDictionary 类来实现这一点。您将查看您的总对象(NSMutableDictionary)是否存在键,如果不存在,则创建它,如果是则添加值。

关于iphone - 如何根据对象的类别汇总获取结果的 number 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10049942/

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