swift中带nil的内联if条件
我尝试使用内联if条件,如下所示:swift中带nil的内联if条件,swift,null,inline,Swift,Null,Inline,我尝试使用内联if条件,如下所示: topDisplay.text = topDisplay.text!.rangeOfString(".") ? "Sth for true" : "Sth for false" 这里的想法是如果topDisplay.text中有“.”!然后做点什么,如果没有,做点别的。如果未找到“.”,则rangeOfString方法返回nil。所以我想知道是否可以在内联条件表达式中检查nil ((顺便说一句,你可能会发现我正试图在斯坦福大学的在线课程中为计算器作业添加“.
topDisplay.text = topDisplay.text!.rangeOfString(".") ? "Sth for true" : "Sth for false"
这里的想法是如果topDisplay.text中有“.”!然后做点什么,如果没有,做点别的。如果未找到“.”,则rangeOfString方法返回nil。所以我想知道是否可以在内联条件表达式中检查nil
((顺便说一句,你可能会发现我正试图在斯坦福大学的在线课程中为计算器作业添加“.”按钮,并且只使用一行代码来实现提示中描述的此功能))
所以我想知道是否可以在内联条件表达式中检查nil
当然<代码>范围字符串(“.”)=nil是一个布尔表达式,可以
用作条件表达式中的条件:
topDisplay.text = topDisplay.text!.rangeOfString(".") != nil ? "Sth for true" : "Sth for false"
所以我想知道是否可以在内联条件表达式中检查nil
当然<代码>范围字符串(“.”)=nil是一个布尔表达式,可以
用作条件表达式中的条件:
topDisplay.text = topDisplay.text!.rangeOfString(".") != nil ? "Sth for true" : "Sth for false"
只需注意,
rangeOfString
不会返回可选值。他必须与NSNotFound
进行比较。@Alladinian:NSString的rangeOfString()方法返回一个NSRange。Swift字符串的rangeOfString()方法返回可选的范围
UILabel
或UITextField
的text
属性是一个Swift字符串。嗯,你说得对。。。但这确实令人困惑,因为文档中包含此签名func rangeOfString(uustring:String)->NSRange
,rangeOfString()
仅在导入Foundation
后才可用!谢谢:)谢谢@Alladinian和Martin R。还有一个问题,调用这种表达式中的函数是否也可能?例如:“Sth for true”-->一些函数for true。@姚:是的,这是可能的。请注意,rangeOfString
不返回可选值。他必须与NSNotFound
进行比较。@Alladinian:NSString的rangeOfString()方法返回一个NSRange。Swift字符串的rangeOfString()方法返回可选的范围
UILabel
或UITextField
的text
属性是一个Swift字符串。嗯,你说得对。。。但这确实令人困惑,因为文档中包含此签名func rangeOfString(uustring:String)->NSRange
,rangeOfString()
仅在导入Foundation
后才可用!谢谢:)谢谢@Alladinian和Martin R。还有一个问题,调用这种表达式中的函数是否也可能?例如:“某事为真”-->一些函数为真。@Yao:是的,这是可能的。