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



首先,很抱歉标题不清楚,但我不知道如何描述我的问题或如何搜索它。(还是初学者(

所以我有一个数组,我需要在其中输入值。

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)

每次要附加新项目时,只需使用数组的append方法

最新更新