Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 数组是否由另一个数组的任何值组成_Ruby - Fatal编程技术网

Ruby 数组是否由另一个数组的任何值组成

Ruby 数组是否由另一个数组的任何值组成,ruby,Ruby,我有一个数组a=[“1”、“2”、“3”、“6”、“7”]和另一个数组b=[“2”、“4”、“7”]。我想检查b的任何内容是否存在于a中。使用Ruby的&操作符,它将返回一个包含两个数组的交集值的数组,下面是一个示例 pry(main)> a = ["1","2","3","6","7"] => ["1", "2", "3", "6", "7"] pry(main)> b = ["2","4","7"] => ["2", "4", "7"] pry(main)> a

我有一个数组
a=[“1”、“2”、“3”、“6”、“7”]
和另一个数组
b=[“2”、“4”、“7”]
。我想检查
b
的任何内容是否存在于
a
中。

使用Ruby的
&
操作符,它将返回一个包含两个数组的
交集
值的数组,下面是一个示例

pry(main)> a = ["1","2","3","6","7"]
=> ["1", "2", "3", "6", "7"]
pry(main)> b = ["2","4","7"]
=> ["2", "4", "7"]
pry(main)> a & b
=> ["2", "7"]
pry(main)> (a & b).empty?
=> false
在Rails中,还可以使用
blank?

pry(main)> (a & b).blank?
=> false
希望上面的例子能帮助您,因为它非常简单:

(a & b).blank?
实际上,它所做的是,取两个数组的交集,返回结果,然后检查结果是否为空。

您可以这样做

a = ["1","2","3","6","7"]
b = ["2","4","7"]
b.any? { |e| a.include?(e) }

我想
empty?
方法在这里会更好,因为它来自Ruby std库(
blank?
来自
activesupport
),所以它将是更通用的解决方案。是的@MarekLipka,我同意你的意见,
empty
也可以使用,我将编辑答案。感谢如果用户似乎问了一个简单的问题,他可能对Ruby不是很有经验。因此,对您的答案进行一些解释是合适的。请参阅我对G.B.答案的评论