gpt4 book ai didi

arrays - 保存和加载结构数组的最佳做法是什么?

转载 作者:行者123 更新时间:2023-11-28 13:37:02 25 4
gpt4 key购买 nike

我正在寻找保存我的结构数组的建议,以便它们在开始时可用,并且可以轻松访问和更新。

我看过的所有教程都只有 1 个结构实例,所以我一直无法实现结构数组。

数据结构是:

    struct Stock : Codable {
let ticker : String
let amount : Double
var boughtAt : Double
var totalValue : Double
var realTimePrice : Double
var float : Double
var type : String
}

var stocksArray = [Stock]()

最佳答案

由于您的struct Stock 符合Codable,您可以轻松地将数组[Stock] 存储在UserDefaults 中作为 data 使用 JSONEncoder,即

var stocksArray = [Stock]()
do {
let data = try JSONEncoder().encode(stocksArray)
UserDefaults.standard.set(data, forKey: "stocksArray")
} catch {
print(error)
}

同样,您可以使用 JSONDecoderUserDefaults 获取数据,例如,

if let data = UserDefaults.standard.data(forKey: "stocksArray") {
do {
let arr = try JSONDecoder().decode([Stock].self, from: data)
print(arr)
} catch {
print(error)
}
}

这是一种存储数组的方法。还有其他方法 - CoreDataFile 等。

关于arrays - 保存和加载结构数组的最佳做法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56475342/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com