#!/usr/bin/ruby -w
puts "Hello, Ruby!";
之前我们已经通过一个简单的脚本输出过一些内容,接下来我们就来看下Ruby 语法相关的基本概念。
首先是Ruby代码中的空白字符,像空格和制表符,就一般会被忽略,除非它们出现在字符串中才会改观,不过有时候他们会用于解释模棱两可的语句,当我们启用-w选项时,类似这种解释就会产生警告。实例如下:
a + b 被解释为 a+b (这是一个局部变量)
a +b 被解释为 a(+b) (这是一个方法调用)
再来就是Ruby程序中的行尾,Ruby语言把分号和换行符看作是语句的结尾,但是呢,如果我们的代码在行尾遇到像+、-之类的运算符的话,他们就会被看做是一个语句的延续。
还有就是Ruby中的标识符,这个标识符是变量、常量和方法的名称,它对大小写敏感,也就是说LU和Lu在Ruby中,代表两个不同的标识符,这和PHP类似,这个标识符中还可以包含字母、数字以及下划线。
还有就是 Ruby 中的保留字,这些保留字不能作为常量或变量的名称,但是,它们可以作为方法名,如下:
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 | while |
def | in | self | __FILE__ |
defined? | module | super | __LINE__ |
之后我们来看下Ruby中的Here Document,它是指建立多行字符串,在<<之后我们可以制定一个字符串或者标识符来终止字符串,并且当前行之后直到终止符位止的所有行都是字符串的值,如果终止符用引号括起的话,引号的类型决定了面向行的字符串类型,我们要注意的就是<<和终止符之间必须没有空格。
来看两个实例:
#!/usr/bin/ruby -w
# -*- coding : utf-8 -*-
print <<EOF
这是第一种方式创建here document 。
多行字符串。
EOF
print <<"EOF"; # 与上面相同
这是第二种方式创建here document 。
多行字符串。
EOF
print <<`EOC` # 执行命令
echo hi there
echo lo there
EOC
print <<"foo", <<"bar" # 可以把它们进行堆叠
I said foo.
foo
I said bar.
bar
运行结果如下:
再来看下Ruby中的BEGIN语句,语法格式如下:
BEGIN{
code
}
上述格式中的code会在程序运行之前被调用。
代码实例如下:
#!/usr/bin/ruby
puts "这是主 Ruby 程序"
BEGIN {
puts "初始化 Ruby 程序"
}
运行结果如下:
与上述代码相对应的是Ruby中的END语句,语法格式如下:
END{
code
}
相对应的,上述格式中的cede会在程序的结尾被调用。
代码实例如下:
#!/usr/bin/ruby
puts "这是主 Ruby 程序"
END {
puts "停止 Ruby 程序"
}
BEGIN {
puts "初始化 Ruby 程序"
}
最后就是Ruby中的注释,这部分内容相对于解释器是不可见的,格式很简单,在每一行开始的时候加上#就算是注释了,跟python一样,咱这里要说的就是类似于PHP中的/**/这种格式的多行注释,各式也不难,如下:
=begin
这是注释。
这也是注释。
这也是注释。
这还是注释。
=end
好啦,本次记录就到这里了。
如果感觉不错的话,请多多点赞支持哦。。。