我有这样的数组:
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]
这甚至会提供有限的搜索功能,尽管效率不高。