Har*_*y B 3 arrays count matrix swift
我是Swift的新手,正在努力确定如何确定多维数组的大小。
我可以对单个数组使用count函数,但是当我创建矩阵/多维数组时,count调用的输出仅给出一个值。
var a = [[1,2,3],[3,4,5]]
var c: Int
c = a.count
print(c)
2
Run Code Online (Sandbox Code Playgroud)
上面的矩阵“ a”显然具有2行3列,是否有任何方法可以输出此正确大小。
在Matlab中,这是一个简单的任务,其中包含以下代码行:
a = [1,2,3;3,4,5]
size(a)
ans =
2 3
Run Code Online (Sandbox Code Playgroud)
Swift中是否有一个简单的等效项
我一直在寻找解决方案的高低,似乎无法确切地找到我要的东西。
谢谢
-HB
因为迅速的2D数组可以具有不同长度的子数组。没有“矩阵”类型。
let arr = [
[1,2,3,4,5],
[1,2,3],
[2,3,4,5],
]
Run Code Online (Sandbox Code Playgroud)
因此,“行”和“列”的概念不存在。只有count。
如果要计算子数组中的所有元素(在上述情况下为12),则可以对其进行平面映射,然后count:
arr.flatMap { $0 }.count
Run Code Online (Sandbox Code Playgroud)
如果确定数组是矩阵,则可以执行以下操作:
let rows = arr.count
let columns = arr[0].count // 0 is an arbitrary value
Run Code Online (Sandbox Code Playgroud)