作为一个来自Java背景并成为Ruby新手的人,我想知道是否有一种简单的方法可以使用ruby.
new_values = foo(bar)
if new_values
if arr
arr << new_values
else
arr = new_values
end
end
Run Code Online (Sandbox Code Playgroud)
假设"arr"是数组或者是nil,我会使用:
arr ||= []
arr << new_values
Run Code Online (Sandbox Code Playgroud)
如果你是在循环或其他类似的情况下这样做,可能会有更多的惯用方法来做到这一点.例如,如果您正在迭代列表,将每个值传递给foo()构造结果数组,那么您可以使用:
arr = bars.map {|bar| foo(bar) }
Run Code Online (Sandbox Code Playgroud)