私はrubyのEnumerator#rejectと少し混乱しています。次のコードを検討してください。
(1..10).select {|i| i % 3 == 0 || i % 5 == 0 } => [3, 5, 6, 9, 10]
次の行は同等ではありませんか?
(1..10).reject {|i| i % 3 != 0 || i % 5 != 0 } => []
拒否メソッドで条件を1つだけ使用すると、期待どおりの結果が得られます。しかし、OR演算子を含めると、結果は空になります。誰かが私のためにこれを明確にすることができますか?
(1..10).reject {|i| i % 3 != 0} => [3, 6, 9]