[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

Re: Looking for an array method

Daniel Lucraft

6/3/2007 9:39:00 AM

Sun Park wrote:
> Are there any methods which work exactly like []= but return the changed
> array, different from []= which returns void?

Array#fill?

a = [0, 1, 2, 3]
=> [0, 1, 2, 3]

irb(main):006:0> a.fill("x", 2..2)
=> [0, 1, "x", 3]

--
Posted via http://www.ruby-....

6 Answers

Robert Dober

6/3/2007 11:05:00 AM

0

On 6/3/07, Sun Park <geniusleonid@gmail.com> wrote:
> Thanks :) do we have such method in String class, too?
irb(main):008:0> a='abc'
=> "abc"
irb(main):009:0> a[1]=?a
=> 97
irb(main):013:0> a[1..1]="a"
=> "a"

thus String#[]= is behaving differently from Array#[]=

Cheers
Robert
You see things; and you say Why?
But I dream things that never were; and I say Why not?
-- George Bernard Shaw

Stefan Rusterholz

6/3/2007 11:44:00 AM

0

Sun Park wrote:
> Sorry, what I meant was :
>
> a = "abc"
> => "abc"
> a (some method with arguments of 1 and "d")
> => "adc"
>
> I wanted to find out are there any methods behaving like this.
>
>
>
> 2007/6/3, Robert Dober <robert.dober@gmail.com>:

a = "abc"
a[1,1] = "d"
a # => "adc"
a[1] = ?b
a # => "abc"

Enjoy
Stefan

--
Posted via http://www.ruby-....

Robert Dober

6/3/2007 11:45:00 AM

0

On 6/3/07, Sun Park <geniusleonid@gmail.com> wrote:
> Sorry, what I meant was :
>
> a = "abc"
> => "abc"
> a (some method with arguments of 1 and "d")
> => "adc"
>
> I wanted to find out are there any methods behaving like this.
Yes #[]=, what is wrong with it? Would you prefer a method with a
different name, I am not sure there is one.
Robert
>
>
>
> 2007/6/3, Robert Dober <robert.dober@gmail.com>:
> >
> > On 6/3/07, Sun Park <geniusleonid@gmail.com> wrote:
> > > Thanks :) do we have such method in String class, too?
> > irb(main):008:0> a='abc'
> > => "abc"
> > irb(main):009:0> a[1]=?a
> > => 97
> > irb(main):013:0> a[1..1]="a"
> > => "a"
> >
> > thus String#[]= is behaving differently from Array#[]=
> >
> > Cheers
> > Robert
> > You see things; and you say Why?
> > But I dream things that never were; and I say Why not?
> > -- George Bernard Shaw
> >
> >
>


--
You see things; and you say Why?
But I dream things that never were; and I say Why not?
-- George Bernard Shaw

Robert Dober

6/3/2007 11:54:00 AM

0

On 6/3/07, Stefan Rusterholz <apeiros@gmx.net> wrote:
> Sun Park wrote:
> > Sorry, what I meant was :
> >
> > a = "abc"
> > => "abc"
> > a (some method with arguments of 1 and "d")
> > => "adc"
> >
> > I wanted to find out are there any methods behaving like this.
> >
> >
> >
> > 2007/6/3, Robert Dober <robert.dober@gmail.com>:
This was not my post!!
Robert
> Enjoy
> Stefan
>
> --
> Posted via http://www.ruby-....
>
>


--
You see things; and you say Why?
But I dream things that never were; and I say Why not?
-- George Bernard Shaw

Harry Kakueki

6/3/2007 12:00:00 PM

0

On 6/3/07, Robert Dober <robert.dober@gmail.com> wrote:
> On 6/3/07, Sun Park <geniusleonid@gmail.com> wrote:
> > Sorry, what I meant was :
> >
> > a = "abc"
> > => "abc"
> > a (some method with arguments of 1 and "d")
> > => "adc"
> >
> > I wanted to find out are there any methods behaving like this.
> Yes #[]=, what is wrong with it? Would you prefer a method with a
> different name, I am not sure there is one.
> Robert
> >
> >
> >
>
a = "abc"
p a[1] = "d" # I think the OP wants to see "adc" here
p a # not just here

Harry

--

A Look into Japanese Ruby List in English
http://www.ka...

Todd Benson

6/3/2007 3:08:00 PM

0

On 6/3/07, Sun Park <geniusleonid@gmail.com> wrote:
> Sorry, what I meant was :
>
> a = "abc"
> => "abc"
> a (some method with arguments of 1 and "d")
> => "adc"
>
> I wanted to find out are there any methods behaving like this.

None directly that I know of, but ...

a = "abc
a.split('').fill("d",1,1).join

or

(a[1]='d';a)