require "set"
s = [[1, 2], [3, 4]].to_set # s = {[1, 2], [3, 4]}
m = s.max_by {|a| a[0]} # m = [3, 4]
m[0] = 9 # m = [9, 4], s = {[1, 2], [9, 4]}
s.delete(m) # s = {[1, 2], [9, 4]} ?????
這從數組不同的行爲的例子。 (如果我們刪除.to_set
,我們會得到s = [[1, 2]]
這是預期的。)這是一個錯誤嗎?