ios - 快速迭代对象变量
问题描述
基本上,我有这个来自服务器的可解码模型
class CalculateModel: Decodable {
var ipn : CalculateModelDetail?
var sn : CalculateModelDetail?
var opv : CalculateModelDetail?
var oppv : CalculateModelDetail?
var opvr : CalculateModelDetail?
var so : CalculateModelDetail?
var osms : CalculateModelDetail?
var vosms : CalculateModelDetail?
}
class CalculateModelDetail : Decodable {
var value : Double?
var name : String?
var payer : String?
}
我想做的是这样的
var calculatedValue: CalculateModel?
*api logic*
{
self.calculatedValue = result
}
我如何迭代这些值?
for element in calculatedValue {
print(element)
}
必须像那样打印ipn,sn,opv,但这在逻辑上不正确ofc
解决方案
我认为您需要像这样解码并删除CalculateModel
let res = try JSONDecoder().decode([String:CalculateModelDetail].self,from:data)
这样,您可以更好地控制键和值
print(Array(res.keys))
print(Array(res.values))
推荐阅读
- mongodb - MongoDB 从 2 个子文档计算字段并生成新文档
- javascript - Axios fetch 后根据响应数据做计数器
- css - 三星 A11 的 CSS 高度宽度
- ios - Swift 5:简单的字符串 URLRequest
- javascript - 你如何使 jest.mock(file) 动态化?
- java - 我怎样才能为 Java 的 UVA 在线问题输入字符串?需要的详细信息
- javascript - 如何使用 JavaScript 在不更改锚标记的 Href 中的路径的情况下更改目标域?
- windows - 使用环境变量 / HOME 加载 puttykeyfile
- node.js - 如何转换一组值,使每个值更接近均值,但在 PySpark 中具有相似形状的分布(即减少标准差)
- angular - 如何使用 Angular + Dotnet 核心应用程序防止并发用户登录?