我想检查我的向量/数组是否由数字组成。
我尝试过:
if isa(x, Array{Number})
println("yes")
end
但这似乎不起作用...
答案 0 :(得分:7)
您在这里有两种情况。
方案1.您想检查向量的类型是否仅允许数字。然后写:
eltype(x) <: Number
场景2。您想检查向量的所有元素是否实际上都是数字。然后写:
all(isa.(x, Number))
第二个效率较低,因为它必须检查整个数组。有时可能需要它的原因是您可以拥有例如:
x = Any[1, 2, 3]
仅包含数字,但是向量的类型通常允许它包含数字以外的其他内容(因此它将在方案1失败但通过方案2)。