我認爲答案很簡單,「不,你不能那樣做」,但是我的想法對Ruby來說總是錯誤的。並行作業和範圍
我試圖做到這一點在Ruby中
city, state, zip = (0..2)
這導致城市是一個範圍其餘均爲零,這不是我想要的。有沒有辦法做到這一點?
我認爲答案很簡單,「不,你不能那樣做」,但是我的想法對Ruby來說總是錯誤的。並行作業和範圍
我試圖做到這一點在Ruby中
city, state, zip = (0..2)
這導致城市是一個範圍其餘均爲零,這不是我想要的。有沒有辦法做到這一點?
隨着圖示操作
city, state, zip = *(0..2)
隨着轉換成數組
city, state, zip = (0..2).to_a
是
city, state, zip = *(0..2)
噢,我從來沒有想過用圖示運營商分配的... – guns 2009-07-18 11:06:26
+1,謝謝Dario ... – 2009-07-18 17:57:40
完美,謝謝! – 2009-07-18 11:55:28
那麼splat和to_a有什麼區別?至少在這種情況下,結果總是一個數組。 – 2009-07-18 12:18:01
在這種情況下沒有區別。實際上,splat操作符實質上將Enumerable替換爲其組成元素。所以如果你寫'[* [1,2],* [3],4]',結果是'[1,2,3,4]'。 – Chuck 2009-07-18 19:11:47