require 'pp'
p *1..10
이것은 1-10을 인쇄합니다. 왜 이렇게 간결한거야? 그리고 그 밖의 무엇을 할 수 있습니까?Ruby에서 "p * 1..10"이 1-10의 숫자를 인쇄 할 수있는 기능은 무엇입니까?
require 'pp'
p *1..10
이것은 1-10을 인쇄합니다. 왜 이렇게 간결한거야? 그리고 그 밖의 무엇을 할 수 있습니까?Ruby에서 "p * 1..10"이 1-10의 숫자를 인쇄 할 수있는 기능은 무엇입니까?
"splat"연산자입니다. 할당 중에 배열과 범위를 분해하고 값을 수집하는 데 사용할 수 있습니다. 여기
할당의 값이 수집된다
a = [1,2, *[3,4]]
=> a = [1,2,3,4]
이 예에서는
a, *b = 1,2,3,4
=> a = 1
b = [2,3,4]
내부 배열합니다 ([3,4]
하나)을 포함하는 어레이로 분해하고 수집있는 숫자 인수를 배열로 수집하는 함수를 정의 할 수 있습니다.
def foo(*args)
p args
end
foo(1,2,"three",4)
=> [1,2,"three",4]
음 :
require pp
는 꽤 인쇄 기능p
에게 가져 가변 인자 꽤 인쇄 방법, 꽤-인쇄*
이에 인수 을 확장 "을 의미 각 인수입니다 varargs "를 단일 인수로 처리하는 대신적절하게 설명되어 있습니까? 그렇지 않다면 어느 비트가 혼란 스럽습니까?
+1 50K 마크가 직조물로서 정성 들여 만든 답답함은 ... –
왜 이것이 다운 voted 되었습니까? 내 대답은 어느 비트가 OP를 혼란스럽게하는지 모른다는 이유로 한 가지 측면에서 세부적으로 들어 가지 않았지만 이것이 스 플랫 연산자에 유용합니다. –