Ale*_*lex 68 ruby arrays ruby-on-rails array-intersect
我试图找到多个数组之间的交集值.
例如
code1 = [1,2,3]
code2 = [2,3,4]
code3 = [0,2,6]
Run Code Online (Sandbox Code Playgroud)
结果将是2
我知道在PHP中你可以用array_intersect做到这一点
我希望能够轻松添加额外的数组,所以我真的不想使用多个循环
有任何想法吗 ?
谢谢,亚历克斯
Anu*_*rag 111
例如:
> [1,2,3] & [2,3,4] & [0,2,6]
=> [2]
Run Code Online (Sandbox Code Playgroud)
Fot*_*ios 46
如果您想要一种更简单的方法来使用未知长度的数组来执行此操作,则可以使用注入.
> arrays = [code1,code2,code3]
> arrays.inject(:&) # Ruby 1.9 shorthand
=> [2]
> arrays.inject{|codes,x| codes & x } # Full syntax works with 1.8 and 1.9
=> [2]
Run Code Online (Sandbox Code Playgroud)