Ruby'is_a?' 所需的类或模块(TypeError)

小马克

我正在玩Ruby,并尝试创建一个小银行帐户程序。当我运行与create_account一起运行的这一行代码时:

unless @response.is_a? Integer && @response.to_str.length == 4
    puts "Your response must be 4 numbers in length."
    create_account
else
    @pin = @response
    puts "Your pin has been set."
end

我得到这个回应:

bank_account.rb:24:in 'is_a?':class or module required (TypeError)
    from bank_account.rb:24:in 'create_account'
    from bank_account.rb:47:in '<main>'

我无法确切弄清楚发生了什么,但是我包括了其余的代码。这是不完整的,显然是因为我坚持了这一部分。我经历了一个while循环,然后输入“创建帐户”以启动create_account方法。我的目标是运行有条件的代码,并要求用户键入4位整数,例如任何ole引脚号。如果它不是整数也不是4位数字,我将调用create_account方法以使它们重新开始。

如果需要该信息,我将运行ruby 2.0.0,但我认为这可能与我的代码有关。Stackoverflow对我来说是新手,因此如果有人提出这个问题,我深表歉意。我试图按照提出问题之前的建议做作业,但是我还是很沮丧。任何帮助表示赞赏。

用户名

您需要将类Integer放在括号中:

unless @response.is_a?(Integer) && @response.to_str.length == 4

你实际上evaulatingis_a?(Integer && @response.to_str.length == 4)这是一个布尔值,而不是一个类或模块。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Ruby中否定`is_a?`

来自分类Dev

相当于Ruby'is_a?'的Python

来自分类Dev

Ruby-Instance_of?/ is_a不起作用

来自分类Dev

Ruby字符串变量为.is_a?返回true(Array)

来自分类Dev

Ruby:模块A与类A :: B

来自分类Dev

Ruby Singleton,模块与类

来自分类Dev

TypeError(救援条款所需的类或模块)

来自分类Dev

需要Ruby Koans类或模块

来自分类Dev

Ruby中的模块和类

来自分类Dev

ruby-跨模块共享类

来自分类Dev

Ruby继承模块类不起作用

来自分类Dev

ruby-跨模块共享类

来自分类Dev

Ruby类/对象/模块图说明

来自分类Dev

Ruby:在类方法中使用模块方法

来自分类Dev

从嵌套在ruby模块中的类中获取类名

来自分类Dev

Ruby模块可以描述为单例类吗?

来自分类Dev

Ruby,将方法添加到模块,类或对象

来自分类Dev

在Ruby中查找所有包含Enumerable模块的类

来自分类Dev

重新加载模块/类后仍定义Ruby方法

来自分类Dev

获取模块ruby中定义的所有类

来自分类Dev

Ruby尝试访问表亲类中的模块变量

来自分类Dev

将Perl转换为Ruby-模块与类

来自分类Dev

Ruby:如何从模块所包含的类中访问常量

来自分类Dev

什么标准证明在Ruby中使用模块而不是类?

来自分类Dev

Ruby 2.4模块名称与我的模型类名称冲突

来自分类Dev

测试Ruby模块类方法不起作用

来自分类Dev

Ruby中的匿名模块和类垃圾回收

来自分类Dev

是否可以在Ruby模块或类中分配“默认方法”?

来自分类Dev

Ruby:如何从两个模块类方法重构代码?