Strange result from to_a

I had unexpected results and could not figure out why

puts (" “…”~").to_a.inspect
returns results of " " thru “9”

m = []
(" “[0]…”~"[0]).to_a.each{|c| m << c.chr}
puts m.inspect

Is a longwinded way of getting the samne but it gives all the results

" " thru “~”

Can anyone tell me why this is so?

I also hear that to_a is to be depricated - but it is hard to figure out
what the alternatives are. Everything I found gave the same unexpeted
results.

Paul

On Fri, Apr 10, 2009 at 12:22 PM, Paul Denize
[email protected] wrote:

I had unexpected results and could not figure out why

puts (" “…”~").to_a.inspect
returns results of " " thru “9”

works fine here, running ruby1.9

Ok, I’m on ruby 1.8.6
Might be time to upgrade.

Thanks

Yep, upgraded and the problem is gone.

Paul Denize wrote:

puts (" “…”~").to_a.inspect
returns results of " " thru “9”

That’s because “9”.succ is “10” instead of “:”

I also hear that to_a is to be depricated - but it is hard to figure out
what the alternatives are.

Only Object#to_a is deprecated.

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs