Ruby是一个通用的面向对象编程语言。在ruby中一切皆对象,这包括你操作的任何东西,以及操作的结果。
对象通过调用构造器方法new创建。如obj = Object.new。
一. ruby基础
def say_goodnight(name)
result = "Good night, " + name
return result
end
#Time for bed
puts say_goodnight("Tom")
puts say_goodnight("Lucy")
二. 数组和哈希
ruby的数组和哈希都是索引集合。
数组元素不需要是同种数据类型,用[ ]声明,元素下标从0开始。
array = [ 1, 2, 3, "test"]
puts array[0]
puts array[3]
hs = {
'key1' => 'val1',
'key2' => 'val2'
}
puts hs['key1']
三.符号
符号是常量的名字,不需要事先声明。如go(:north)。
符号常用于哈希的键。
protocols = {
:tcp => "tcp",
:udp => "udp",
:icmp => "icmp"
}
puts protocols[:tcp]
protocols = {
tcp: 'tcp',
udp: 'udp',
icmp: 'icmp'
}
puts protocols[:tcp]
四.控制结构
if count > 10
puts "Try again"
elsif tries == 3
puts "You lose"
else
puts "Enter a number"
end
while x < 10
x += 1
end
五.正则表达式
六.块和迭代器
七.I/O
ruby提供了完整的IO库。
puts 输出后自动换行
print 输出后不换行
printf 输出格式化字符串,和c的printf类似;
gets 从输入读取一行
八.命令行参数
如果要在程序中获取命令行参数,可以通过数组ARGV获取。
puts ARGV