“var items = [Int]()”中括号的用途是什么?

问题描述:

我是Swift的新手,正在尝试学习它的语法。我在网上看到了这个代码。“var items = [Int]()”中括号的用途是什么?

var items = [Int]() 

我知道

  • VAR =声明变量
  • 项=变量的名称是 '项目'
  • [INT] = INT
  • 的阵列

但是,我不确定[Int]之后的()的用途。我知道没有()的代码不会编译,但它的目的是什么?

它正在初始化一个将包含Ints的Array的新实例。正是这种语法的速记:

var items = Array<Int>() 

代替Array<Int>的类型,你可以使用[Int]代替。

第三种变化是显式声明类型,然后分配一个空数组。

var items: [Int] = [] 
+0

非常感谢您的帮助!为了澄清,()代表数组的构造函数吗?或者它代表别的东西? – Thor

+1

@dzjustinli完全正确。它调用没有参数的构造函数。 –

+2

是的,正如大卫所说,它正在构建一个新的对象。有一点要记住的是Swift并不真正把它们称为构造函数,而是将它们称为初始化函数。我知道这很棘手,但如果你需要查看其他初始化部分的信息,它可能会对你有所帮助。 –