Юлия: проверь, является ли вектор вектором чисел - PullRequest
0 голосов
/ 28 августа 2018

Я хотел бы проверить, состоит ли мой вектор / массив из чисел.

Я пробовал:

if isa(x, Array{Number})
  println("yes")
end

Но, похоже, это не работает ...

1 Ответ

0 голосов
/ 28 августа 2018

У вас есть два сценария здесь.

Сценарий 1. Вы хотите проверить, допускает ли тип вектора только числа. Затем напишите:

eltype(x) <: Number

Сценарий 2. Вы хотите проверить, являются ли все элементы вектора числами. Затем напишите:

all(isa.(x, Number))

Второй менее эффективен, поскольку должен проверять весь массив. Причина, по которой иногда это может быть необходимо, заключается в том, что вы можете иметь, например:

x = Any[1, 2, 3]

, который содержит только числа, но тип вектора в целом позволяет ему содержать не только числа (кроме сценария 1, но пройти сценарий 2).

...