Kann jemand das VerhaltenString-Zuweisung nach Referenz/Kopie?
Szenario-1
str = "hello"
str1 = str
puts str #=> hello
puts str1 #=> hello
str1 = "hi"
puts str1 #=> hi
puts str #=> hello
Hier Ändern Sie den Wert von str1
hat keinen Einfluss auf den Wert der str
erklären.
Szenario-2
str = "hello"
str1 = str
str1.gsub! "hello", "whoa!"
puts str1 #=> whoa
puts str #=> whoa
shoudn't die gsub!
Wirkung nur die str1
? Warum ändert sich str
? Wenn str1
nur den Verweis auf str
enthält, warum hat sich dann der Wert in Szenario-1 nicht geändert?
Sie sind Beat mich dazu .... +1 – Salil
Gut geschriebene Antwort. –
Gilt das für alles? Alles ist ein Objekt und alles wird durch Referenz zugeordnet? Einschließlich anderer Dinge, die normalerweise in anderen Sprachen wie Integers oder Floats primitiv sind? –