class A
def numbers
[1,2,3,4]
end
def get_numbers(condition)
numbers = [3,5] if condition
numbers
end
end
a = A.new
a.get_numbers(true) # [3,5]
a.get_numbers(false) # nil
두 번째 경우에 [1,2,3,4]
을 반환 할 것으로 기대합니다!Ruby 인스턴스 메서드 및 같은 이름의 조건부 로컬 변수 할당
P. 나는 솔루션을 찾고 있지 않다. (나는 두 개의 다른 변수 이름을 가지고있어 문제를 해결할 수있다.) 오히려 나는이 동작에 대한 설명을 찾고있다. 루비는 런타임 중에 numbers
변수를 생성한다. &은 nil
으로 초기화된다. if
상태?
왜 이것을 downvoted입니까? 그것은 유효한 질문입니다 ... – Mischa
@ Mischa 정확히! –