我不知道這是如何變量稱爲origString在我的循環變量改變值,紅寶石
def scramble_string(string, positions)
i = 0
origString = string
puts origString
newString = string
while i < string.length
newString[i] = origString[positions[i]]
i = i + 1
end
puts origString
return newString
end
變更值,例如,如果我運行scramble_string(「ABCD」,[3,1,2,... 0] ) origString從第一個「puts」中的「abcd」更改爲第二個中的「dbcd」。 如果我只聲明一次,我如何更改origString的值?
Ruby強烈建議使用像'orig_string'這樣的名稱,不要使用大寫字母,因爲大小寫在Ruby中具有重要意義。 – tadman
該變量不會更改其值。價值正在改變其內容,因爲你告訴它在第7行。 –
@JörgWMittag你可以詳細說明嗎?它的工作原理「價值在改變其內容」。 – Aparichith