swift 在[array]之后的()是什么意思?[副本]

pn9klfpd  于 2023-09-30  发布在  Swift
关注(0)|答案(1)|浏览(122)

此问题已在此处有答案

Why do I need braces at the end of an array declaration in swift?(2个答案)
8天前关闭

struct Cat {
    static let allCats = [Cat]()
    init() {
        Cat.allCats.append(self)
    }
    static func chorus() {
        for _ in allCats {
            print("Meow!")
        }
    }
}

我只想知道这是什么。我在网上找,找不到。

0kjbasz6

0kjbasz61#

有关详细信息,请参阅文档。
这种形式是Array类型的语法糖。[Int]Array<Int>相同。
这也适用于其他类型,如字典,其中[Int: String]与Dictionary<Int,String>`相同。
请注意,这只适用于类型声明。当声明变量/常量的值时,上下文开始变得重要:

let setTest: Set<Int> = [1, 2, 3]      // This is a set, but can be declared like an array
let arraytest: Array<Int> = [1, 2, 3]  // This is a normal array

相关问题