Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/111.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 核心数据和阵列_Ios_Objective C_Core Data_Nsmutablearray - Fatal编程技术网

Ios 核心数据和阵列

Ios 核心数据和阵列,ios,objective-c,core-data,nsmutablearray,Ios,Objective C,Core Data,Nsmutablearray,我需要存储这些值 x值=时间 y值1,y值2,y值3,y值10 因此,每次都有这些不同的Y值切片。这就是两者之间的联系 我对核心数据方法相当陌生,我听说将它们存储到阵列中是不可能的。我不必查询它们,但我确实需要在给定会话之后将它们存储在数据库中(假设超过1000个entires——这就是为什么我不想首先将它们全部放在NSMutableArray中) 核心数据是解决此问题的最实用的方法,还是有更好的解决方案来处理如此数量的数据 编辑: 到目前为止,我的模型是这样的 实体1:时间片 属性:时间浮动

我需要存储这些值

x值=时间

y值1,y值2,y值3,y值10

因此,每次都有这些不同的Y值切片。这就是两者之间的联系

我对核心数据方法相当陌生,我听说将它们存储到阵列中是不可能的。我不必查询它们,但我确实需要在给定会话之后将它们存储在数据库中(假设超过1000个entires——这就是为什么我不想首先将它们全部放在NSMutableArray中)

核心数据是解决此问题的最实用的方法,还是有更好的解决方案来处理如此数量的数据

编辑: 到目前为止,我的模型是这样的


实体1:时间片

属性:时间浮动

关系:价值观


实体2:价值观


属性:yValue1,yValue2,yValue3,…,yValue10-float

这取决于每个yValue1代表的变量类型,但看起来你可能会用一种比你需要的更尴尬的方式来处理它。您可以将它们放在一个数组中,然后将该数组存储在核心数据持久存储区的NSData属性中。如果您真的不需要查询它们,那么我将确保yValue类实现encodeWithCoder:方法,如本问题中所述:

然后,您可以创建这些对象的数组,并将整个数组归档到NSData对象中,并将其存储在实体的单个属性中。这可能是最有效的存储方式。您的核心数据模型将如下所示:

实体-时间输入

属性:time-NSNumber

属性:yValues-NSData

使用此核心数据模型,您可以查询特定时间(或一组时间),然后根据需要取消归档NSData对象


如果要创建对象的“类型”,关系会更好。一个典型的例子是公司->经理->员工模式。每个公司、经理和员工都是一个实体。从公司到多个管理者,从每个管理者到多个员工,都会有一对多的关系。您还可以将每个员工分配给多个经理,等等。

我认为从iOS5开始,核心数据支持有序关系。编辑多对多关系时,只需在复选框中选择“ordered”。

您应该显示更多的代码以及您的模型。否则,这是猜测而不是回答。但是,我想您应该将数组值存储在单独的表中,并引用具有一对多关系的数组成员。请检查我的编辑。我还没有把它编好,但我只是想知道我在core-data中的阵列方面是否朝着正确的方向前进。谢谢你的输入。我会试试这个:)