ruby 如何使用exclude来重构函数?

a11xaf1n  于 2023-04-05  发布在  Ruby
关注(0)|答案(1)|浏览(107)

我想重构我的函数**(我不想用each,我想只用一行就解决)**,到目前为止我用的是each,但我想知道是否有可能做得更简短?那个函数是关于如果v不属于地址数组,那么我应该返回false,其他情况下返回true

address = %w[one two]
result = true
types.each do |_, v|
      result = false if address.exclude?(v)
end

注:目前我的功能运行良好

njthzxwz

njthzxwz1#

地址列表中是否包含所有值?

types.values.all? { |val| address.include?(v) }

或者:

(types.values - address).none?

(you也可以使用.empty?.length == 0等,而不是这里的none?)。

相关问题