I 변수로 이루어진 어레이를 가지며, I 각각에 동일한 동작을 수행하고, 원래 변수에 결과를 저장할 :변경 값
(one, two, three) = [1, 2, 3]
[one, two, three].map!{|e| e += 1}
# => [2, 3, 4]
# But:
[one, two, three]
# => [1, 2, 3]
# You have to:
(one, two, three) = [one, two, three].map{|e| e += 1}
# => [2, 3, 4]
[one, two, three]
# => [2, 3, 4]
이되지 않는다 그것을하는 "올바른 방법"처럼 보이지만, 나는 "올바른 길"을 찾아 낼 수있는 것이 아닙니다. 나는 또한 무슨 일이 벌어지고 있는지 모호한 생각을 가지고있다. 그러나 나는 그렇게 확신 할 수 없다. 그래서 설명은 인정 될 것이다.
내 실제 사용 사례 I 매개 변수의 이름 했으니 내가 e = File.new(e) if e.is_a? String
이것은 작동하지 않습니다. '하나', '두', '세'는 변하지 않은 채로 남아 있습니다. –
맞습니다, Darshan. 내 대답이 업데이트되었습니다. –