按位NOT运算符(〜)不适用于SWIFT 1.2中的布尔值

时间:2015-07-07 00:04:40

标签: ios swift

我从swift 1.0迁移到swift 1.2,我发现按位NOT运算符(〜)不再适用于这个简单的例子:

   var open : Bool = false
   open = ~open

'〜'无法使用'!'而不是

这是一种新的方式吗?任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

出于某种原因,Swift曾经支持Bool类型的按位运算符。

在像Swift这样的高级语言中,Bool数据类型只能是" true"或" false,"你不应该使用像〜(NOT),|那样的按位运算符(或)和& (和)。使用条件运算符! (不),|| (OR)和&& (AND)。

相关:What is the difference between logical and conditional AND, OR in C#?

它是一种不同的语言,但幸运的是,这些运算符的实现在大多数具有类似C语法的语言中几乎完全相同。