Vector Julia-检查向量x的元素是否在向量y中

Vector Julia-检查向量x的元素是否在向量y中,vector,julia,element,broadcasting,Vector,Julia,Element,Broadcasting,我想检查elementwise(或broadcast),向量x的元素是否在Julia中的向量y中,就像函数checkin所做的那样: x = ["one", "two", "three", "four"] y = ["two", "three", "five", "four"] function checkin(x,y) for i = 1:length(y) if y[i] ∈ x println(true) else

我想检查elementwise(或broadcast),向量x的元素是否在Julia中的向量y中,就像函数
checkin
所做的那样:

x = ["one", "two", "three", "four"]
y = ["two", "three", "five", "four"]

function checkin(x,y)
    for i = 1:length(y)
        if y[i] ∈ x
            println(true)
        else 
            println(false)
        end
    end
end
checkin(x,y)
输出:

true
true
false
true
如果我打字

x .∈ y

我犯了一个错误

通常,我确信有一种更简单的方法来编写9行函数,但我找不到它使用:

in.(y, Ref(x))
您必须将
x
包装在
Ref
中,或写入
(x,)
[x]
,以便使广播始终采用
x
,而不是重复播放

请注意,我编写它是为了让您检查
y[I]
是否在
x
中,因为这是参考实现的方式。请使用:

in.(y, Ref(x))
您必须将
x
包装在
Ref
中,或写入
(x,)
[x]
,以便使广播始终采用
x
,而不是重复播放


请注意,我编写它是为了让您检查
y[I]
是否在
x
中,因为这是您参考实现的方式。

再次感谢@BogumiłKamiński。
Ref
与中的相同吗?是的,但在本应用程序中,只需将其视为0维容器,其中容纳的
x
正好有一个元素。使用
Ref
比使用例如
[x]
更好,因为它是不可变的,并且在热代码中不会导致Julia进行额外的分配
(x,)
应该同样快到
Ref(x)
。再次感谢@BogumiłKamiński。
Ref
与中的相同吗?是的,但在本应用程序中,只需将其视为0维容器,其中容纳的
x
正好有一个元素。使用
Ref
比使用例如
[x]
更好,因为它是不可变的,并且在热代码中不会导致Julia进行额外的分配
(x,)
应该与
Ref(x)
一样快。