So there is an to_s for strings and a to_i for integers. However, if I
have an array of integers and I want to grab one, I get back and ASCII
character. For example, when I grab a 1 from the array it returns a 49 -
but I wanted the one! How do I convert it back to its integer
want-to-be? Thanks,
~S
P.S. I imagine this is probably an easy solution but, I am a ruby
newbie.
So there is an to_s for strings and a to_i for integers. However, if I
have an array of integers and I want to grab one, I get back and ASCII
character.
Are you sure you have an array of integers?
Show some code.
For example, when I grab a 1 from the array it returns a 49 -
but I wanted the one! How do I convert it back to its integer
want-to-be? Thanks,
So there is an to_s for strings and a to_i for integers. However, if I
have an array of integers and I want to grab one, I get back and ASCII
character. For example, when I grab a 1 from the array it returns a 49 -
but I wanted the one! How do I convert it back to its integer
want-to-be? Thanks,
~S
P.S. I imagine this is probably an easy solution but, I am a ruby
newbie.
Shandy, Perhaps this helps. Note the difference between 004 and 006
All I wanted to do was to pick out a single character (a digit) from
that string and perform some calculations on it. But by just saying [i]
I got a 57 value when I wanted the 9 value. When I said [i…i] I got the
9 value. Thanks for all your help,
~S
Card_num[i] is returning the character value at position i.
card_num[i].chr will return the character at position i
card_num[i].chr.to_i will return the integer value of the character
card_num[i].type => Fixnum
card_num[i…i].type => String and is why card_num[i…i].to_i worked
Sorry about not giving code. I did finally get it to work, but here is
what I had to do:
card_num = “123456789”
c = 0
char = card_num[i…i].to_i
before I had:
char = card_num[i].to_i
All I wanted to do was to pick out a single character (a digit) from
that string and perform some calculations on it. But by just saying [i]
I got a 57 value when I wanted the 9 value. When I said [i…i] I got the
9 value. Thanks for all your help,
All I wanted to do was to pick out a single character (a digit) from
that string and perform some calculations on it. But by just saying
[i]
I got a 57 value when I wanted the 9 value. When I said [i…i] I
got the
9 value. Thanks for all your help,
It’s a bit late, I guess, but did you consider something like:
"123456789"[-1] - ?0 # => 9
Regards, Morton
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.