为了在CoreData中存储一个值,我在我的xcdatamodel中创建了一个名为theArrForClickedUrl
的Transformable
实体。将此值存储到我的数组后,我将从数据库中获取它,如此...
for result in self.appDelegate.allProducts2 {
if let theData1 = result.value(forKey: "theArrForClickedUrl") as? String {
print(theData1)
}
}
在打印theData1
,这是我得到的......
[
TheApp.ProductImage(myId: "973", url: http://myapp..com/public/prd/image_1, isDefault: false),
TheApp.ProductImage(myId: "988", url: http://myapp..com/public/prd/image_231, isDefault: false),
TheApp.ProductImage(myId: "989", url: http://myapp..com/public/prd/image_97, isDefault: true)
]
现在我想从每个中检索url,然后将其存储到数组中。那我怎么能实现呢?
试试这个:
arrayValues.map({ $0.url})
其中arrayValues是您从CoreData获得返回对象的变量。
最简单的映射方式如下:
let newArray = theData1.map { $0.url }
你将只使用Strings
获得数组
用于循环
var stringsArray = [String]()
theData1.forEach { stringsArray.append($0.url) }