我是 Swift 的新手,正在努力研究如何确定多维数组的大小。
我可以对单个数组使用计数函数,但是当我创建矩阵/多维数组时,计数调用的输出只给出一个值。
var a = [[1,2,3],[3,4,5]]
var c: Int
c = a.count
print(c)
2
上面的矩阵 'a' 显然有 2 行和 3 列,有没有办法输出这个正确的大小。
在 Matlab 中,这是一个简单的任务,只需以下代码行,
a = [1,2,3;3,4,5]
size(a)
ans =
2 3
Swift 中是否有一个简单的等价物
我四处寻找解决方案,但似乎无法找到我真正想要的。
谢谢
- 乙肝
最佳答案
因为 swift 中的二维数组可以有不同长度的子数组。没有“矩阵”类型。
let arr = [
[1,2,3,4,5],
[1,2,3],
[2,3,4,5],
]
所以“行”和“列”的概念是不存在的。只有 count
。
如果你想计算子数组中的所有元素,(在上面的例子中,12),你可以平面映射它然后计数
:
arr.flatMap { $0 }.count
如果你确定你的数组是一个矩阵,你可以这样做:
let rows = arr.count
let columns = arr[0].count // 0 is an arbitrary value
关于arrays - 在 Swift 中确定多维数组的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48239189/