在 swift 中内联 if 条件为 nil

Inline if condition with nil in swift

我正在尝试使用 inline if 条件如下:

topDisplay.text = topDisplay.text!.rangeOfString(".") ? "Sth for true" : "Sth for false"

这里的意思是如果有“.”在 topDisplay.text!然后做点什么,如果不行,就做点别的。方法,rangeOfString,returns nil if no "."被发现。所以我想知道是否可以在内联条件表达式中检查 nil。

((顺便说一句,你可能会发现我试图在斯坦福的在线课程中为计算器作业添加“。”按钮,并且只使用一行来实现提示描述的这个功能))

So I am wondering is it possible to check nil within inline condition expression.

当然可以。 rangeOfString(".") != nil 是一个 布尔值 表达式,它可以 用作条件表达式中的条件:

topDisplay.text = topDisplay.text!.rangeOfString(".") != nil ? "Sth for true" : "Sth for false"