compact

Array#compactは、配列中のnilを削除した配列を新たに作って返します。compact!は(いつものように)破壊的メソッドです。

a = [ 'A', nil, 'B', 'C', nil, nil, 'D']
p a           #=> ["A", nil, "B", "C", nil, nil, "D"]
p a.compact   #=> ["A", "B", "C", "D"]
p a           #=> ["A", nil, "B", "C", nil, nil, "D"]
p a.compact!  #=> ["A", "B", "C", "D"]
p a           #=> ["A", "B", "C", "D"]