说我有一个类似的数组:
a = [1, 2, 3, 4, 5, 6]
我有两个这样的变量:
b = 3
c = 4
我想做这样的事情:
a.each do |i|
if(b = = i) and (c == i.next(I don't think I can do this))
return true
end
end
任何帮助都将不胜感激。
史蒂夫G。答案 0 :(得分:3)
each_cons做你想做的事:
a = [1, 2, 3, 4, 5, 6]
b=3
c=4
a.each_cons(2){|v1, v2| puts(b == v1 && c == v2)}
# output:
# false
# false
# true
# false
# false
答案 1 :(得分:1)
a.each_cons(2).include?([b,c])
答案 2 :(得分:0)
你是否需要在循环中执行它,或者你可以简单地跟踪每个变量是否是所讨论数组的member?
?或者将它们放入哈希/集合并确保每个密钥都包含在内?或者保持循环,并保持逻辑或运算是否或每个var是member?
或者向Array添加members?
方法,并传入一个数组来检查,或者......
这应该足以让你开始。
答案 3 :(得分:0)
不要使用
a.each_slice
获取一系列配对对象。
按照steenslag或glenn mcdonald的建议使用each_cons。