[英]error in increase a variable in ruby
我已經編寫了這段代碼來增加實例變量,但是它不起作用並說:
nil:NilClass的未定義方法`+'(NoMethodError)
class Ali
@var1 = 2
def initialize
end
def getvar1
@var1 = @var1 + 2
return @var1
end
end
ali = Ali.new
puts ali.getvar1()
將您的初始值@var1 = 2
放在初始化程序中。 那就是初始化器的作用!
您可以執行以下操作來實現所需的功能
class Ali
def initialize
@var1 = 2
end
def getvar1
@var1 = @var1 + 2
end
end
ali = Ali.new
ali.getvar1
=> 4
ali.getvar1
=> 6
請注意,在ruby中,@ @var
是一個實例變量,只能通過實例進行訪問。 @@var
是一個類變量,可以在類中的任何位置進行訪問。
還有一點,方法的最后一條語句是默認返回值。 僅當最后一條語句不是您要用作返回值的值時,才使用顯式return
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.