最近我正在做一些代码测试,发现固定大小的数组创建在Swift中并不像其他语言那样简单,比如c ++。
我在这里看到了1d数组的解决方案:link:
One Dimension数组,将c ++与Swift进行比较:
// In c++
int array1[64]; // 1-dimension array size 64
// In Swift
var array1 = [Int?](repeating: nil, count: 64) // 1 dimension array size 64
对于二维数组:
// in c++
int array2[64][64]; // 2-dimension array size 64x64
// in Swift
var array2 : [[Int?]] = ???????
如何在swift中启动固定大小的2d数组?
我通过在Playground中测试找到答案,这是解决方案:
在c ++中
int array1[64]; // 1-dimension array size 64
int array2[64][64]; // 2-dimension array size 64x64
在斯威夫特:
var array1 = [Int?](repeating: nil, count: 64) // 1 dimension array
var array2 = [[Int?]](
repeating: [Int?](repeating: nil, count: 64)
count: 64
) // 2-dimension array size 64x64
// Access it like normal
array2[4][2] = 42
print(array2[4][2]) // output: 42
快速的奖金,三维阵列!
var array3 =
[[[Int?]]](
repeating: [[Int?]](
repeating: [Int?](
repeating: nil,
count: 3),
count: 3),
count: 3)