gpt4 book ai didi

ruby - 打印变量

转载 作者:数据小太阳 更新时间:2023-10-29 07:23:13 25 4
gpt4 key购买 nike

我的问题可能很简单,但我无法在任何地方找到答案。

创建类时,例如:

class Book
@author = "blabla"
@title = "blabla"
@number_of_pages"

我想创建一个方法来打印我的变量。我在尝试时遇到了问题:

def Print
puts @author, @title, @number_of_pages
end

我一无所获。

当我尝试时:

def Print
puts "@author, @title, @number_of_pages"
end

我明白了:“@author、@title、@number_of_pages”

如何让 Print 方法打印出变量的值?

最佳答案

您应该将变量初始化移动到initialize:

class Book
def initialize
@author = "blabla"
@title = "blabla"
@number_of_pages = 42 # You had a typo here...
end
end

在您的问题中,变量是类实例变量(如果您对此感到好奇,可以谷歌搜索,但它在这里并不真正相关)。

初始化为(普通)实例变量,如果您只是想转储状态,您的第一个版本的 Print() 可以工作——它在自己的行上打印每个参数。

要让您的第二个版本的 Print() 正常工作,您需要将变量包装在 #{} 中以对它们进行插值:

def print # It's better not to capitalize your method names
puts "#{@author}, #{@title}, #{@number_of_pages}"
end

关于ruby - 打印变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11985079/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com