使用for循环从数组中检索元素

问题描述 投票:-1回答:2

为了在CoreData中存储一个值,我在我的xcdatamodel中创建了一个名为theArrForClickedUrlTransformable实体。将此值存储到我的数组后,我将从数据库中获取它,如此...

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,然后将其存储到数组中。那我怎么能实现呢?

ios swift core-data
2个回答
0
投票

试试这个:

arrayValues.map({ $0.url})

其中arrayValues是您从CoreData获得返回对象的变量。


0
投票

最简单的映射方式如下:

let newArray = theData1.map { $0.url }

你将只使用Strings获得数组

用于循环

var stringsArray = [String]()
theData1.forEach { stringsArray.append($0.url) }
© www.soinside.com 2019 - 2024. All rights reserved.