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)

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

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

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

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


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


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


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

相关文章

软件简介:蓝湖辅助工具,减少移动端开发中控件属性的复制和粘...
现实生活中,我们听到的声音都是时间连续的,我们称为这种信...
前言最近在B站上看到一个漂亮的仙女姐姐跳舞视频,循环看了亿...
【Android App】实战项目之仿抖音的短视频分享App(附源码和...
前言这一篇博客应该是我花时间最多的一次了,从2022年1月底至...
因为我既对接过session、cookie,也对接过JWT,今年因为工作...