swift UInt32 0 还是 0x0?

swift UInt32 0 or 0x0?

在我查看的所有教程中,当分配给 UInt32 时,我看到数字为 0x0

self.physicsBody!.collisionBitMask = 0x0

为什么不

self.physicsBody!.collisionBitMask = 0

这是有原因的还是只是为了可读性?

00x0没有区别,但是这样写是因为问题中的属性是一个位掩码,用十六进制更容易看.可能在其他地方,其他值将被写为 0x0010 等,因此为了保持一致性,他们选择写 0x0 。这是个人喜好,因此在您自己的代码中,可以随意使用十六进制、二进制,甚至是移位运算符 (1 << 3)——只要能帮助您理解常量以及它们作为位掩码的交互方式即可。