我用的是什么?检查数组中某些内容的方法,例如(简化示例,实际情况更复杂)
%w{ant bear cat}.any? {|word| word == 'cat'}
它将返回true。但是,如果我希望实际比赛返回怎么办?例如"猫"以上?我想过用这样的东西:
%w{ant bear cat}.any? {|word| (@x=word) == 'cat'}
但它看起来并不好看。
答案 0 :(得分:3)
在这种情况下,使用select
返回等于' cat'或find
返回第一个元素等于' cat':
p %w{ant bear cat}.find {|word| word == 'cat'}
# => "cat"
p %w{ant bear cat}.select {|word| word == 'cat'}
# => ["cat"]
答案 1 :(得分:2)
%w{ant bear cat}.find {|word| word == 'cat'}
# => "cat"