2014-07-10 3 views
1

Ruby docs는 Range#step이 하나의 인수를 허용한다는 것을 보여줍니다. step에 전달 된 숫자 단위로 범위를 반복하는 데 사용되는 것으로 보입니다.전달 범위 # 여러 인수 인수

(0..100).step(5) { |x| puts x } 

는 생산해야합니다

에라 토 스테 네스의 체의 예에서
0 
5 
10 
15 
... 

, 사람들이 Range#step을 전달하는 것을 두 개의 인수 것으로 보인다 here을 볼 때 : 무슨 일 것입니다

(primes[index] * 2).step(primes.last, primes[index]) do 

이리? step 두 개의 인수를 전달하면 어떻게됩니까? 내가 좋아하는 뭔가를 테스트 할 때 :

(0..100).step(5,10) { |x| puts x } 

내가 얻을 : 당신이 방법은 Range#step, 두 개의 인수를 복용 Numeric#step입니다 언급 하나라고 주장 무엇 달리

ArgumentError: wrong number of arguments (2 for 0..1)

답변

2

곱셈은 범위를 반환하지 않으므로 이 아닙니다.이 값은 끝점과 단계 값을 사용합니다. Numeric#step입니다.

1

. 첫 번째 인수는 제한이고 두 번째 인수는 단계입니다.