核心数据复杂阵列



我有这样的数组:

var vakken: [(String,[Int],[Int])]

但我不知道我怎么能把它放在核心数据中并将其拉回来?

有没有人建议如何制作这个甚至一些代码?

提前致谢

您可以按如下方式设置数据模型(无序数组)。

MainEntity
   (stringAttribute) String
   (quantityAttribute) <------------->> IntEntity
                                           (intAttribute) Int
   (quantity2Attribute) <------------>> IntEntity2
                                           (intAttribute) Int

如果两个 int 数组相当相似,您可以简化

MainEntity
   (stringAttribute) String
   (quantityAttribute) <------------->> QuatityEntity
                                           (intAttribute) Int
                                           (type) Int
                                           (order) Int // optional

一个不太灵活的方法是使用NSKeyedArchiver对数组进行编码,但这是非常昂贵的。

也许最简单的技巧是拥有一个具有三个String属性的实体,您可以将数组转换为字符串。例如

let arrayToBeSaved = [1,2,3]
object.firstArray = arrayToBeSaved.map { "($0)" }.joinWithSeparator(",")
// stores "1,2,3"
// retrieve
let storedArray = object.firstArray.characters.split{ $0 == "," }.map{ Int(String($0))! }
// retrieves [1,2,3]

这甚至会提供有限的搜索功能,尽管效率不高。

最新更新