[Newbies] Populate a new array.

Bert Freudenberg bert at freudenbergs.de
Sun Mar 11 12:30:29 UTC 2007


On Mar 11, 2007, at 10:40 , Blake wrote:

> Here's another one:
>
> I've created a method that returns an array of its own class:
>
> anArray: aQuantity
> 	| a |
> 	a := Array new: aQuantity.
> 	a size
> 		do: [:i | a at: i put: self class new].
> 	^ a
>
> but, for a while, I was trying to make this a single line:
>
> ^ (Array new: aQuantity) do: [:item | item := stuff ]
>
> This doesn't work (I think) because "do" passes in a value rather  
> than a reference. I didn't see how it could be done with  
> withIndexDo: either.
>
> Wondering if I'm missing something.

^(1 to: aQuantity) collect: [:i | stuff]

- Bert -




More information about the Beginners mailing list