原文:http://willh.org/cfc/wiki/index.php/%E6%96%B0%E6%89%8B%E6%95%99%E5%AD%B8:%E5%9F%BA%E6%9C%AC%E8%AA%9E%E6%B3%95
新手教学:基本语法
1.保留字
BEGIN do next then
END else nil true
alias elsif not undef
and end or unless
begin ensure redo until
break false rescue when
case for retry while
class if return yield
def in self __FILE__
defined? module super __LINE__
2.注释
写程序时常常会用到注释,以便日后在观看程序时可以快速回想该行(段)代码有何用处
在Ruby,写注释可以用一个“#”号
#这是注释
还可以用=begin跟=end来包住要注释的文字
=begin
这是注释文字
这是第二行
=end
3.数值
数值的表示方法与其它程序语言没有太大差异
Ruby支持大数(Bignum),Fixnum,浮点数(Float)
整数
123 #十进制
1_234 #有底线的十进制
O377 #很显然的,八进制
Oxff #当然是16进制啦
Ob1011 #0跟1组成的二进位
?a #打印出a的Ascii Code
12345678901234567890 #大数
浮点数
123.4 #如你所见,小数
1.0e6 #科学符号
4E20 #没用到“点(.)"
4e+20 #指数前的符号。
4.字符串
字符串是一组String类别
”abc“ --双引号字符串允许取代转义字符。
‘abc’ --单引号字符串不运行取代取代转义字符。
连接字符串
”foo“ ”bar“ #等同于”foobar“
表示式取代
#$var跟#@var是#{$var}跟#{@var}的缩写。用#{$变量名称}或者#{@变量名称}把变量嵌入
到字符串中。
5.数组
数组的写法
[] #一个空数组
[1,2,3]#含有三个元素的数组
[1,[2,3]] #含有数组的数组
你可以用以下方法写数组
%w(foo bar baz) #["foo","bar","baz"]
6.哈希表
一个哈希表是键和值的集合
{"id"=>"XY1000","name=>"Ruby","age"=>10}
7.变量
在Ruby中,有五中的变量形态:全局变量(Global variable),Instance variable,类变量(class
variable),局部变量(local variable)与常数。
全局变量:
开头加上"$"
$foo
Instance Variable
开头加上"@"
@foo
类变量
开头加上"@@"
@@foo
局部变量
什么都没加
foo
常数
Foo
8.常数
常熟要怎样定义呢?在ruby中不用Const或者const来定义一个常数
在ruby中,只要名称开头是”大写“,就是常数!定义一个常熟为Foo:
Foo
9.流程控制
conditional是条件
if:
if conditional [then]
code
[elsif conditional [then]
code]
[else
code]
end
code if conditional
unless:
unless conditional [then]
code
[else
code]
end
code unless conditional
case:
case expression
[when expression[, expression...] [then]
code]...
[else
code]
end
while:
while conditional [do]
code
end
begin
code
end
until:
until conditional [do]
code
end
begin
code
end until conditional
for:
for variable[, variable...] in expression [do]
code
end
Foreach:
expression.each do |variable[, variable...]| code end