1、Ruby数组和散列表Array和Hash
数组和一般C/C++等语言差不多
a = [1, 2, 3, 4, 5]
或 a = %w{1 2 3 4 5 6}
=>a[0] = 1 a[1] = 2
散列表与数组类似
散列表中有两个对象:一个键(key)一个值(value),比如
City = {
‘jiangsu’ => 'nanjin'
'anhui' => 'hefei'
'zhejiang' => 'hangzhou'
}左边是键,右边是对应的值
City['jiangsu'] 输出就是 "nanjin"
注意:在一个散列表中,键是唯一的;键和值可以是任意对象(数组、其他散列表等都可以)
2、Ruby类中包括一个特殊方法initialize
当创建对象时,会调用initialize方法,并把调用new时使用的参数传入该方法。所以这是我们可以创建对象时设置他的状态。
def say_gn(name)
r = "GN," + name
end
puts say_gn ("Hello World")
a = %w{a b c d e}
puts a[0]
b = {'1' => 'str', '2' => 'str'}
puts b['1']
class Song
def initialize(name, artist, deration)
@a = name
@b = artist
@c = deration
end
#def to_s to_s可以重写
# "Song : #@a #{@b} #{@c}"
# end
end
test = Song.new(123, 34, 0)
puts test.inspect
print test.to_s
输出
GN,Hello World
a
str
#<Song:0x15412e75 @b=34, @c=0, @a=123>
#<Song:0x15412e75>