如何在Swift中声明变量

时间:2015-08-02 20:26:31

标签: swift variables label sprite

我正在学习Swift并注意到有不同的方法来声明变量。

问题:以下3行之间有什么区别,以及何时使用哪一行?

var mySprite: SKSpriteNode?

var mySprite = SKSpriteNode()

var mySprite = SKSpriteNode(imageNamed: String())

同样,以下3行与何时使用哪一行有什么区别?

var myLabel: SKLabelNode?  

var myLabel = SKLabelNode() 

var myLabel = SKLabelNode(fontNamed: "name")

3 个答案:

答案 0 :(得分:3)

var mySprite: SKSpriteNode?

在这种情况下,变量的类型是可选的,这意味着在您创建包含此变量的类的实例时它是nil,这是您类的属性。

var mySprite = SKSpriteNode()

在这里,您在创建包含它的类的实例时初始化您的属性。

var mySprite = SKSpriteNode(imageNamed: String())

与第二名相似。但在使用的初始化方法上有所不同。在里面()。

答案 1 :(得分:1)

在声明变量方面,两种情况下最后两行没有区别。

第一个声明与后两个声明的不同之处在于它声明了SKLabelNode类型的可选值,其默认值为nil

答案 2 :(得分:1)

第一行代码将变量声明为

  

可选

。 swift中的Optional变量意味着它可以是nil或者它可以有一个值,并且你总是应该使用“if let”表达式安全地解开它。

第二行和第三行将定义类SKSpriteNodeSKLabelNode的新对象,但每个对象具有不同的参数。