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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用for循环从数组中检索元素相关的知识,希望对你有一定的参考价值。

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

答案

试试这个:

arrayValues.map({ $0.url})

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

另一答案

最简单的映射方式如下:

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

你将只使用Strings获得数组

用于循环

var stringsArray = [String]()
theData1.forEach { stringsArray.append($0.url) }

以上是关于使用for循环从数组中检索元素的主要内容,如果未能解决你的问题,请参考以下文章

我可以像在 for 循环中从数组中索引项目一样从元组中检索项目吗?

如何将数组中的类随机分配给for循环中创建的元素

如何使用python从数组中删除特定元素

如何在我的 for 循环之外执行代码(需要等到循环完成从 Firebase 数据库中检索数据)?

从 DOM 中读取 HTML 片段并向其中添加自定义数据

使用for循环从数组迭代到列表