如何在swift中声明具有不同类型的二维数组?

Ada*_*nas 0 swift swift2

二维数组 - Ints

// Works!
var foo = [[Int]]() 
Run Code Online (Sandbox Code Playgroud)

二维数组 - Ints/Strings

// Neither work.  Halp!

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

我发现了这个问题,这让我相信这可以做到,但不建议.

tma*_*lla 6

这里的最佳实践是使用两个不同类型值的元组

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

或者,如果您想使用不同类型的值

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

但是如果你想让它成为一个多维数组,那么只需要它不是特定于类型的:

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