我在做一些操作使用數組,像這樣的(很簡單)數組中的奇怪行爲。隨機元素
a = [1, 2, 3, 4]
b = [1]
b.push((a-b).sample)
=> [1, 2]
好吧,讓我們看到了一些時間的價值
b
=> [1, 2]
b
=> [1, 3]
b
=> [1, 2]
b
=> [1, 4]
我不明白爲什麼b變爲。我認爲我從a和b之間的差異中隨機抽取了一個元素,並將它附加到b,所以...我錯在哪裏?
編輯:
今天是新的一天,而奇妙的是,同樣的代碼運行正常....這是一個謎 感謝的一切!
我不能重現:https://gist.github.com/8ca38af6a5574fe17417 – 2012-03-14 23:59:03
這似乎很奇怪的是,每次檢查B檢查的時間有不同的價值觀。這只是在裸露的irb會話?有沒有其他線程提及b掛在附近? – dbenhur 2012-03-14 23:59:12
@dominikh你得到了我應該得到的代碼 – Imanol 2012-03-15 00:06:41