我必须将通常包含整数的字符串转换为类型b1 B1
b1 V1
b1 V2
b1 B2
b2 B3
b2 V3
b2 V4
b2 B4
的值。规则是获取Bool
或任何非零值。但是无效的数字应该导致true
。
如果字符串始终是有效数字,则代码如下:
false
但是,如果let stringValue = "1"
let boolValue = Int(stringValue) != 0
为空,则不起作用,因为stringValue
函数返回Int()
,并且不等于0,因此结果最终为我需要nil
时才true
。
在Swift 3中解决此问题的优雅方式是什么?我喜欢避免使用false
子句的额外行。
注意:如果字符串只能包含" 1"对于if
值,测试true
就是答案。但我也想允许== 1
的其他非零值。换句话说,我希望0以外的任何有效数字变为true
。