Array#reject!nil如果块对false接收器中的每个元素求值(在原地更改,在这种情况下不会更改),则返回,与相比Array#reject:
a=1,2,3
a.reject {false} # => [1, 2, 3]
a.reject! {false} # => nil
这在我看来相当奇怪。为什么Array#reject!被设计成这样?在这种情况下应该Array#reject!表现得像吗?Array#reject
我希望能够链接方法,如select!,reject!和map!. 有没有办法做到这一点?