0

我有两个数组。

一个被命名为foods,它是一个字符串数组。

另一个名为dataList。它是一个包含名为 name 的属性的对象数组。

我需要做的是检查数组 foods 中的名称是否存在于 dataList 中。这意味着 food 中的所有项目都需要等于 dataList 中的名称属性之一。

如果两个数组都包含相同类型的数据,我知道如何检查数组。但我不知道该怎么做。

4

1 回答 1

0

由于我们不关心元素的顺序,也不关心元素出现的次数,我们可以使用 Set 轻松做到这一点。

require 'set'

foods_set = Set.new(foods)

attribute_names_set = Set.new
dataList.each do |d|
  attribute_names_set << d.name
end

return foods_set == attribute_names_set
于 2013-02-02T23:07:09.970 回答