有这样的结构:
struct ScrollTableViewColumn {
var ContentType: ContentType
enum ContentType {
case String
case Numeric(sum: Double, width: CGFloat)
}
}
我可以使用 switch语句访问存储在内容类型中的数字,如下所示:
switch column.ContentType {
case .Numeric(let sum, let width):
// do something with sum and width…
如何使用 if语句来实现类似的功能?
答案 0 :(得分:2)
首先,您需要使用小写字母设置属性名称和枚举值,因此请更改enum
这样的内容。
enum ContentType {
case string
case numeric(sum: Double, width: CGFloat)
}
现在你可以这样使用if case
。
if case .numeric(let sum, let width) = column.ContentType {
print(sum, width)
}
修改:你也可以这样做if case
。
if case let .numeric(sum, width) = column.ContentType {
print(sum, width)
}