我在swift的操场上练习,我不知道为什么swift对于程序员应该在哪里提供空间以及哪里没有提供空间太具体。我在许多站点和聊天室问了这个问题,但没有任何答案。
var j: Int = 34 // Right var j:Int=23 //Wrong
还有,在课堂上
self.variable-= 5 //Wrong. Error: Consecutive statements must be followed by ; self.variable-=5 // Right self.variable -= 5 // Right
;
甚至这个“:”有时也会引起一些空格问题。
我认为空格对代码绝对没有影响。通常只是为了程序员的利益。它只是使代码更具可读性。阅读有关空间的所有快速规则的最佳资源是什么?
您的问题第二部分的答案可以在这里找到swift docs
运算符周围的空白用于确定将运算符用作前缀运算符,后缀运算符还是二进制运算符。以下规则总结了此行为: 如果运算符的两边或两边都没有空格,则将其视为二进制运算符。例如,a + b和a + b中的+运算符被视为二进制运算符。 如果运算符仅在左侧具有空格,则将其视为前缀一元运算符。例如, b中的运算符被视为前缀一元运算符。 如果运算符仅在右侧具有空格,则将其视为后缀一元运算符。例如,a b中的运算符被视为后缀一元运算符。 如果运算符的左侧没有空格,但是紧跟着一个点(。),则将其视为后缀一元运算符。例如,a 。b中的运算符被视为后缀一元运算符(a .b而不是 .b)。 等等…(有关更多信息,请阅读文档)
运算符周围的空白用于确定将运算符用作前缀运算符,后缀运算符还是二进制运算符。以下规则总结了此行为:
如果运算符的两边或两边都没有空格,则将其视为二进制运算符。例如,a + b和a + b中的+运算符被视为二进制运算符。
如果运算符仅在左侧具有空格,则将其视为前缀一元运算符。例如, b中的运算符被视为前缀一元运算符。
如果运算符仅在右侧具有空格,则将其视为后缀一元运算符。例如,a b中的运算符被视为后缀一元运算符。
如果运算符的左侧没有空格,但是紧跟着一个点(。),则将其视为后缀一元运算符。例如,a 。b中的运算符被视为后缀一元运算符(a .b而不是 .b)。
等等…(有关更多信息,请阅读文档)
至于问题的第一部分,我没有发现任何一种声明变量的问题。
var j: Int = 34 var j:Int=23
提供的代码的唯一问题是,您在同一范围内两次声明了j。尝试将j之一更改为x或y或其他。
如果您想知道
var j:Int =10
要么
var j:Int= 10
看上面的规则。=是运算符,因此如果您要执行任何一个操作,它将被视为前缀或后缀,并且会收到以下错误:前缀/后缀=保留
由于存在一元运算符,例如一元加和一元减运算符,因此这些规则非常重要。编译器需要能够区分二进制加号和一元加号运算符。运营商名单