09/08/19 11:00:07
>>245
Rubyの配列にはそういう機能がないです。残念でした。
代替案としては arr[x] で参照するかわりに (arr[x] ||= 0) とするとか。
たとえば
arr = [1, 2, 3]
puts (arr[5] ||= 0) + 1
みたいな。
あとは Array#[] を上書きすればいいのかなー
class Array
def [](x)
val = super(x)
val = self[x] = 0 if val.nil?
return val
end
end
とか。