基于Ruby Monk Calculator练习,我试图建立一个可以加减的简单计算器:
class Calculator
def add(a,b)
a + b
end
def subtract(a,b)
a - b
end
end
puts "input first integer"
a = gets.chomp.to_i
puts "input second integer"
b = gets.chomp.to_i
puts "add or subtract?"
response = gets.chomp.downcase
if response == "add"
Calculator.add(a,b)
else response == "subtract"
Calculator.subtract(a,b)
end
当我运行代码时,我不断得到“NoMethodError”' - 方法'添加'和'减去'未定义。我不明白为什么我会收到此错误,并且想知道我是否错误地调用了该方法。
答案 0 :(得分:4)
您在实例级别而不是类级别定义了方法。使用
def self.add(a,b)
a + b
end
或创建Calculator
calc = Calculator.new
calc.add(a,b)