繁体   English   中英

Swift 3构建数组(不知道如何描述)

[英]Swift 3 build array (Don't know how to describe)

首先,对标题不清表示抱歉,但我不知道如何描述我的问题或如何进行搜索。 (仍然是初学者)

所以我有一个数组需要放置值。

let heliosDataArray:String = "[{\"timestamp\":\"\(timestamp)\",\"uv\":\"\(uvIndex!)\",\"light\":\"\(lightvalue!)\"}]"

因此,在此“模板”中,我需要添加3个值:时间戳记,uvIndex和lightValue。 到现在为止还挺好。 现在我有很多值,对于API调用,我需要多次将此数组链接到1个数组中,有点像一个主数组。 最实用的方法是什么? 数据量是可变的,并且来自CoreData。 可能要先将值放在数组中。 我应该寻找什么? 我在想一个循环,但是想更高级吗?

提前致谢

您可以使用面向对象的逻辑进行处理:

struct Data {

    var timestamp: Double?
    var lightValue: Double?
    var uvIndex: Int?
}    

let data1 = Data(timestamp: 13.4, lightValue: 3.4, uvIndex: 4)
let data2 = Data(timestamp: 12.4, lightValue: 2.4, uvIndex: 3)
let data3 = Data(timestamp: 11.4, lightValue: 1.4, uvIndex: 2)

var dataArray = Array<Data>() // or-> var data = [Data]()

dataArray.append(data1)
dataArray.append(data2)
dataArray.append(data3)

您可以通过多种方式执行此操作。 其中之一是显示下面就让我们说,你有从coredata三个值timestampuvIndexlightvalue

似乎您要问的是一个字典数组,首先需要的是从CoreData获取的值的字典,我们将其dayItem

var dayItem = ["timestamp": timestamp, 
               "uv": uvIndex,
               "light": lightValue]

现在创建一个值数组

var dayArray: [[String: Any]] = []
dayArray.append(dayItem)

每当您要追加新项目时,只需使用array的append方法

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM