Re: How to do a for loop...and iterate a set number of times?



It actually requires a little bit different thinking because once you
know idiomatic ruby, all the 'language' stuff you have to worry about
becomes stuff you just don't have to think about, like building new
arrays pit of existin ones, splitting things up, etc

Sent from my iPhone

On 30/01/2009, at 9:34 AM, Tim Hunter <TimHunter@xxxxxxxxx> wrote:

Dan No wrote:
So painfully basic, but I'm just starting Ruby and am coming to it
from
C/C++/Java, etc. and some of the syntax is unnatural to me, and yes,
I've tried Google. I have an array of things and I want to access the
first 10...how do I do that?
for thing in things #(how do I set the beginning and end of the
loop?)
#do something
end

Usually collections define an each method. Each call into the block
gets the next element in the collection. You don't have to worry
about the beginning and end of the loop. The each method and its
friends are considered the most idiomatic.

ary.each {|element| ...}

Or if you just want the equivalent of a C for loop, use upto. The
block argument is the current count, starting with 'start':

start.upto(finish) {|n| ...}

Also there's step, which lets you use an increment other than 1:

start.step(finish, incr) {|n| ...}

It really depends on what you want to do.

--
RMagick: http://rmagick.rubyforge.org/


.



Relevant Pages