Swift学习笔记(十一)——Swift中三元运算符的低级错误:Consecutive statements on a line must be separated by';'

       今天在Xcode中的Background的中撸了几行Swift代码,居然出了不少错误,郁闷啊。找了好久才解决了bug,不爽啊。主要是一个三元运算符的小问题。报错是:Consecutive statements on a line must be separated by';'。现在贴出来和大家分享,希望后人不要遇到这样的低级错误。

var score = 64
let grade:String=score>=60?"及格":"不及格"
println(grade)

 上述代码报错,错误如下:

Swift学习笔记(十一)——Swift中三元运算符的低级错误:Consecutive statements on a line must be separated by';'_第1张图片

报错中说“在一行中的连续语句必须使用;分号分隔”,根据提示,我怎么加;分号都不行,不就是一个简单的三元运算符吗?怎么可能需要加;分号。然后我去百度该问题,在stackoverflow上找到一个相似的问题,可惜不能解决我的问题。链接如下:http://stackoverflow.com/questions/28397744/skaction-customactionwithduration-consecutive-statements-on-a-line-must-be-separ    。

      然后我以为是优先级的问题,就根据运算先后加了括号,还是不行。。。。无语了。

      最后一怒之下,我把每个变量和左右的运算符中间都使用空格进行隔开。突然代码正确了,运行成功。如图所示:


       最后一一进行检查,发现问题的关键是数字60和?之间必须要有空格,否则就报错。如下代码所示可以运行成功:


      坑爹啊,Swift对运算符的检查也太严格了吧,所谓的Swift的安全性我算是真正见识到了。泪崩,浪费我好久时间。


github主页:https://github.com/chenyufeng1991  。欢迎大家访问!

你可能感兴趣的:(xcode,swift,三元运算符)