【发布时间】:2019-05-17 07:06:11
【问题描述】:
我想知道是否有更优雅的方式来写这个:
struct S {
var state: [String: Any]
public var amounts: [Amount] {
var result: [Amount] = []
(self.state["amounts"] as? [Any]?)??.forEach({ a in
result.append(Amount(a))
})
return result
}
}
struct Amount {
init(_ any: Any?) {}
}
我已经尝试使用map 作为数组,但我找不到这样做的方法。
【问题讨论】:
-
amounts的值很可能比[Any]更具体 -
由于
amounts数组将根据来自state的 optional 值填充,我建议将其声明为可选数组 ([Amount]?)。