数组类型错误:无法转换为长整数字符串

数组类型错误:无法转换为长整数字符串

问题描述:

我与阵列实验,和我由史蒂夫Holzner读的书开始Ruby on Rails的。我制作的节目:

I am experimenting with arrays, and am reading the book "Beginning Ruby on Rails" by Steve Holzner. I made the program:

array = ['Hello', 'there', 1, 2]
puts array[1]
puts array[3]
puts array.length
array2 = Array.new
puts array2.length
array2[0] = "Banana"
array2[1] = 6
puts array2[0] + " " + array2[1]
puts array3.length

它没有做太多,但是当我运行它,我得到的错误

It doesn't do much, but when i run it i get the error

arrays.rb:9:in `+': can't convert Fixnum into String (TypeError)
    from arrays.rb:9

为什么我得到这个错误?

Why do I get this error?

您不能添加一个字符串和一个整数( Fixnum对象),在这种情况下,你试图加6到香蕉。

You can't add a string and a integer (Fixnum), in this case you tried to add 6 to "Banana".

如果在第9行,你这样做:

If on line 9 you did this:

puts array2[0] + " " + array2[1].to_s

您将获得:

"Banana 6"