字符串拼装
使用简单的‘+’号即可。如: puts “Hello, ” + “World!”
使用‘<<’也可以。如:put “Hello, ” << “World!”
输出多次字符串
puts “Hello,World!” *3 #输出3个Hello,World!
3.times (print “Hello,World!”) #输出3个Hello,World
puts “Hello, ” *3 + “World!” #输出3个Hello,和一个World
插入对Shell命令的调用
puts “Hello,World!” + `ruby –version` #输出Hello,world!ruby 1.9.2dev (2010-07-02) [i486-linux]
请注意shell命令要用重音记号括起来,重音记号就是Tab键上方那个。
变量使用
root@bt:/home/rubytest# gedit test.rb
编辑内容如下:
name=”snail ”
age=”16″
puts “My name is “+ name +”.I am “+ age + ” years old.”
保存。
root@bt:/home/rubytest# ruby test.rb
My name is snail.I am 16 years old.
表达式——#{表达式内容}
name= “snail!”
puts “Hello, #{name}” #输出Hello,snail!
可以利用表达式还可以从命令行接收参数
puts “Hello, #{ARGV[0]}, #{ARGV[1]}”
终端输入:root@bt:/home/rubytest# ruby test.rb snail Morning
显示:Hello, snail, Morning
注意终端参数直接是以空格为分界线的,所以你如果输入 ruby test.rb snail Good Morning
那么显示的是:Hello,snail, Good
这是一个缺陷。
格式化字符串
hi=”Hello,%s”
puts hi % “world!” #输出Hello world!
puts hi %”snail!” #输出Hello snail!
ruby -e
使用ruby -e可以直接在命令行输出内容,而不必像之前那样先写到文本里面再保存成.rb文件后在终端执行。
root@bt:~# ruby -e “puts ‘hello,world’”
hello,world
root@bt:~# ruby -e “puts ‘hello’” -e “puts ‘world’”
hello
world
root@bt:~# ruby -e “print ‘hello ‘” -e “puts ‘world’”
hello world
以上也可以看出,print和puts的一个区别就是print不自带换行符,而puts自带换行符
利用分号‘;’可以在一个-e里面执行多条语句
比如:
root@bt:~# ruby -e “a=3;puts ‘hello ‘*a”
hello hello hello
接收键盘输入
print “please input whatever:”
whatever=gets
puts “you input: ” + whatever
终端:
root@bt:~# ruby helloworld.rb
please input whatever:54xiaowoniu
you input: 54xiaowoniu
调用自定义方法
root@bt:~# gedit method.rb
打开编辑如下内容:
def mymethod
puts “This is a self_method!”
end #自定义方法mymethod,只输出一行显示
mymethod #调用自定义的方法mymethod
保存。
root@bt:~# ruby method.rb
This is a self_method!
语句块结构
root@bt:~# gedit method.rb
打开编辑如下内容:
def mymethod
yield
end #定义方法mymethod,只有一句yield语句
mymethod {puts “Hello,snailgo!”} #yield会执行大括号里面的代码
保存。
root@bt:~# ruby method.rb
Hello,snailgo!
each方法显示数组所有元素
root@bt:~# gedit test.rb
打开编辑如下内容:
["Hello, ","snail!"].each{|e| print e}
保存。
root@bt:~# ruby test.rb
Hello,snailgo!
OK,先学习到这里,以后继续!