如何创建元组数组?

Dou*_*ith 11 arrays tuples swift

我正在尝试在Swift中创建一个元组数组,但是很难:

var fun: (num1: Int, num2: Int)[] = (num1: Int, num2: Int)[]()
Run Code Online (Sandbox Code Playgroud)

以上导致编译器错误.

为什么那么错?以下工作正常:

var foo: Int[] = Int[]()
Run Code Online (Sandbox Code Playgroud)

Mar*_*n R 22

它适用于类型别名:

typealias mytuple = (num1: Int, num2: Int)

var fun: mytuple[] = mytuple[]()
// Or just: var fun = mytuple[]()
fun.append((1,2))
fun.append((3,4))

println(fun)
// [(1, 2), (3, 4)]
Run Code Online (Sandbox Code Playgroud)

更新:从Xcode 6 Beta 3开始,数组语法已更改:

var fun: [mytuple] = [mytuple]()
// Or just: var fun = [mytuple]()
Run Code Online (Sandbox Code Playgroud)


Nat*_*ook 7

你可以做到这一点,只是你的任务过于复杂:

var tupleArray: [(num1: Int, num2: Int)] = [ (21, 23) ]
Run Code Online (Sandbox Code Playgroud)

或者做一个空的:

var tupleArray: [(num1: Int, num2: Int)] = []
tupleArray += (1, 2)
println(tupleArray[0].num1)    // prints 1
Run Code Online (Sandbox Code Playgroud)