如何打印课程内容?

时间:2009-11-28 11:42:12

标签: ruby

我有一个新手问题! 我想做这样的事情:

puts Example.new([a,b,c])

,结果为

=> a,b,c

我试过这样的事情:

class Example
  attr_accessor :something
  def initialize(something)
  @something = something
  puts @something
  end
end

它有效但不是我想要的! 谢谢!

2 个答案:

答案 0 :(得分:6)

您是否希望以可读形式打印对象?尝试使用inspect method

class Myobj
  attr_accessor :x, :y, :z
end

a = Myobj.new
a.x = 1; a.y = 2; a.z = 3
a.inspect  #=> "#<Myobj:0x1bc48950 @y=2, @x=1, @z=3>"

答案 1 :(得分:5)

这样的事情会起作用吗?

class Example
  def initialize(args = [])
    @args = args
  end

  def to_s
    @args.join(",")
  end
end

puts Example.new([1,2,3])
>> 1,2,3