为什么三元运算符如此之快?

清扫器

问题很简单,但是我找不到答案!

为什么不

return x == 0? "" : "Hello"

编译但是

return x == 0 ? "" : "Hello"

有吗

这真的很奇怪,因为所有其他运算符都不需要多余的空格。例如

let x = 1+1
let y = 1 + 1

是相同的。

我认为这与可选项有关。但是,当您?在变量上使用运算符时,必须像这样使用它:

let s: String? = nil
let x = s?.startIndex

我的意思是必须跟随另一个操作员,对吗?

时钟

我认为这与可选项有关。

是的 关于操作员的文档说:

规则[关于运算符周围的空白]有一个警告。如果!?预定义运算符在左侧没有空格,则无论其右侧是否有空格,都将被视为后缀运算符。要将?用作可选链接运算符,它的左侧不得有空格。要在三元条件(? :)运算符中使用它,它的两侧都必须有空格。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么具有两个常量的三元运算符比带有变量的三元运算符快?

为什么三元运算符出现错误?

为什么C ++模板计算如此之快?

为什么MATLAB在矩阵乘法中如此之快?

为什么这个C ++程序如此之快?

为什么从内存映射文件读取如此之快?

为什么列表乘法如此之快?

为什么“或”运算符不能“ ||” 在此JavaScript代码中替换三元运算符“?:”?

为什么在使用三元if / else运算符时,增量运算符(++ /-)不起作用?

三元运算符返回什么意思?

Javascript 三元运算符——条件是什么?

是System.out.print为什么(三元运算符)打印漂浮在输出?

为什么在使用三元运算符时不能抛出异常

Node js 三元运算符为什么比较出错?

为什么三元运算符在Java中的方法参数中不起作用

为什么C#三元运算符要求强制转换等效的if()语句?

为什么我收到的NullPointerException在我的三元运算符?

为什么三元运算符会因类型不匹配错误而失败?

为什么for循环中的三元运算符会出错?

Java为什么不允许在这里使用三元运算符?

为什么用三元运算符初始化数组是非法的?

为什么使用三元运算符在宏中定义1和0?

使用条件条件与三元运算符循环,为什么更快

为什么我们不能在三元运算符中返回?

为什么必须在布尔检查的括号内放置三元运算符?

为什么Powershell中的三元运算符不分配我的值?

为什么这种方法不起作用?Java三元运算符

为什么三元运算符会意外地转换整数?

三元运算符返回“ true:false”。为什么?