Il giorno mar, 25-01-2005 alle 16:32 +0100, Robert Klemme ha scritto:
> "Zuzzurro" <celhoquilabrioche / zuzzurro.it> schrieb im Newsbeitrag
> news:1106665910.3709.5.camel / localhost.localdomain...
> > Hi,
> >
> > I need an insert method for the Array class, the insert method let you
> > do something like this:
> >
> > a = ['a', 'b', 'd']
> > a.insert!(2, 'C')
> >
> > a => ['a', 'b', 'C', 'd']
> >
> >
> > I've implemented it this way:
> >
> > class Array
> >   def insert(v, i)
> >     i = 0 if i < 0
> >     a = Array.new
> >     a += self[0..i-1] if i > 0
> >     a << v
> >     tail = self[i..-1] if i < self.length
> >     a += tail unless tail.nil?
> >     return a
> >   end
> >
> >   def insert!(v, i)
> >     new_self = insert(v, i)
> >     clear
> >     concat new_self
> >   end
> > end
> >
> >
> > Is there a better way of doing this?
> 
> >> a = %w{a b c d}
> => ["a", "b", "c", "d"]
> >> a[2,0]=%w{1 2 3}
> => ["1", "2", "3"]
> >> a
> => ["a", "b", "1", "2", "3", "c", "d"]
> 
> Kind regards
> 
>     robert
> 

thank you.