2

使用以下代码完成介绍性 Ruby 练习:

num = 8
7.times do
  print num.type, " ", num, "\n"
  num *= num
end 

我不断得到:

NoMethodError: undefined method `type' for 8:Fixnum

我必须定义类型吗?我以为这是ruby认可的方法

4

2 回答 2

5

type方法用于返回对象的类,但很久以前(早在 1.8 天)就被弃用了,随后被删除。

您可以改用该class方法,但是如果您正在学习教程或类似的东西,这表明它已经很老了——可能已经有 10 年了!

于 2014-06-17T15:16:10.580 回答
2

type你可能的意思是class,所以type改为class

num = 8
7.times do
  print num.class, " ", num, "\n"
  num *= num
end
于 2014-06-17T15:03:51.863 回答