parvg
1
Hello,
Looking for you suggestions.
- array = %w(a b c d e)
- tempArray = array
- array.clear
- puts tempArray.length
line 4 outputs: 0
Why does my tempArray get cleared also?
Any suggestions on how to keep the tempArray content from clearing out?
Thanks
parvg
2
Parv G. wrote:
Hello,
Looking for you suggestions.
- array = %w(a b c d e)
- tempArray = array
- array.clear
- puts tempArray.length
line 4 outputs: 0
Why does my tempArray get cleared also?
Any suggestions on how to keep the tempArray content from clearing out?
Thanks
because array and tempArray are references to the same Array instance.
see same object
array.object_id #=> -605829518
tempArray.object_id #=> -605829518
tempArray = array.dup #=> make a shallow copy.
array.clear
puts tempArray.length #=> 5
parvg
3
tempArray = array.dup #=> make a shallow copy.
array.clear
puts tempArray.length #=> 5
That should do the trick for me.
Thanks a lot!
Parv