双方括号在Swift中是什么意思?

5
下面是Swift的示例代码。
var loadedMessages = [[Message]]()

Message是一个自定义类。我不确定[[Message]]()在做什么。

2个回答

11

它指定你的变量loadedMessages是一个包含Message对象的数组数组。一个loadedMessages的JSON表示可能如下所示:

loadedMessages: [
  [ <Message>, <Message>, <Message> ],
  [ <Message>, <Message>, <Message> ]
]

快速的Playground实现类似的东西可以让你对情况有相当好的洞察力:

var foo = [[String]]()
foo.append(["bar"])
foo[0][0] // reveals "bar"

4

这意味着它是一个消息数组的数组。可以将方括号里的任何内容视为该数据类型的数组,其中也可以包含另一个数组。

或者,如果不使用“简写”数组语法来编写,那么它将是Array<Array<Messages>>()


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接