快速三元操作这是什么"?" 符号

Jac*_*erg 1 ios swift

我最近一直在关注一个指南,并注意到他们写了一条我以前从未见过的线,我不知道它叫什么,以及它是如何工作的.

let title: String = isPaused ? "Start" : "Pause"

因此该物业isPaused具有Bool的类型,但问号代表什么?这是一种"转换"语句,当值可能是StartPause

最后一个问题,这种操作甚至被称为什么?

谢谢!

Rei*_*ian 5

被称为三元运算符,并不仅仅是Swift编程语言的特性,几乎所有主要编程语言都支持三元运算符,因为您可以在这里阅读三元运算符维基百科参考

基本上你在一行中做一个if else语句

let title: String = isPaused ? "Start" : "Pause"相当于

 let title: String
 if isPaused {
     title = "Start"
 } else {
     title = "Pause"
 }
Run Code Online (Sandbox Code Playgroud)