数组对象无法在Ruby中初始化为数组

用户名

我正在尝试创建一个类Song,它接受两个输入,即Song和Artist,并创建数组,即[song,artist]。当我运行该代码时,我的对象是数组的断言失败。如何正确编写一个带有两个输入并创建数组对象的initialize方法?

我的代码:

class Song 
    def initialize(song, artist)
        @piece = [song, artist]
    end
end

hello = Song.new("hello", "goodbye")

def assert
    raise "Assertion failed!" unless yield
end

assert { hello.kind_of?(Array) }
虚假的

hello是一个Song对象,而不是数组对象。你的意思是hello.piece

class Song 
    attr_reader :piece  # <---------

    def initialize(song, artist)
        @piece = [song, artist]
    end
end

hello = Song.new("hello", "goodbye")

def assert
    raise "Assertion failed!" unless yield
end

assert { hello.piece.kind_of?(Array) } # <------

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

数组对象无法在Ruby中初始化为数组

来自分类Dev

将数组类型初始化为对象javascript

来自分类Dev

初始化为数组的对象的XML序列化

来自分类Dev

将指针数组初始化为结构中的NULL

来自分类Dev

将字符数组初始化为C ++中的NULL

来自分类Dev

将指针数组初始化为结构体中的NULL

来自分类Dev

初始化数组中的对象

来自分类Dev

首次将值初始化为整数数组后无法重新初始化

来自分类Dev

奇怪的值被初始化为数组

来自分类Dev

奇怪的值被初始化为数组

来自分类Dev

Ruby数组初始化

来自分类Dev

对象数组初始化

来自分类Dev

对象数组初始化?

来自分类Dev

在C ++中初始化对象中的数组

来自分类Dev

在Ruby中初始化2d数组

来自分类Dev

如何在Ruby中初始化类数组

来自分类Dev

如何在Ruby中初始化类数组

来自分类Dev

在C ++中初始化二维对象数组

来自分类Dev

在Java中制作/初始化类似结构的对象数组

来自分类Dev

在初始化中填充Java对象数组

来自分类Dev

用对象在循环数组中初始化

来自分类Dev

如何在 Java 中静态初始化对象数组

来自分类Dev

为什么在Java中将数组初始化为默认值而不初始化为arraylist?

来自分类Dev

在Julia中初始化数组的数组

来自分类Dev

将C或C99中的结构数组初始化为所有相同的值

来自分类Dev

C将数组和结构体中的指针初始化为相同的值

来自分类Dev

在键数组中访问字典,或将键初始化为子字典

来自分类Dev

将大型二维数组初始化为 C++ 中的所有值

来自分类Dev

将静态成员数组初始化为零