1.8Ruby语言的表达式(Expression)

Ruby的语法是面向表达式的,在Ruby语言中,所有语句(Statement)实际上都是表达式(Expression)。

一切表达式皆有值,但并不是都会返回有意义的值,比如 if 条件可能会返回 nil

1.BEGIN-END

大写形式的 BEGINEND 与小写形式的 beginend 不是一码事。

BEGIN 定义一个在当前文件中任何其他代码之前运行的代码。类似地,END 定义了一个在任何其他代码之后运行的块。

它们通常在 ruby -e 的一行程序中使用,如果出现在文件,则通常出现在文件的第一行。

如果有多个 BEGIN,则按 Ruby 解释器遇到它们的先后顺序执行。如果有多个 END,则按 Ruby 解释器遇到它们的先后顺序反向执行,还句话说,就是第一个遇见的 END 将被最后执行。

花括号不可以被 doend 代替,且花括号不可被省略。

BEGIN {
  #起始代码
}

END {
  #结束代码
}
#示例
ruby -ne 'BEGIN { count = 0 }; END { puts count }; count += gets.to_i'

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/ruby/rubylang/10732.html

(0)
上一篇 2022年12月7日 20:38
下一篇 2022年12月9日 20:38

相关推荐

  • 1.1Ruby语言的注释(Comment)

    1.单行注释 2.多行注释 2.1# 多个 # 可以表示多行注释。 2.2=begin 多行注释以 =begin 开头和以 =end 结尾。 =begin 和 =end 后的内容都是注释,=begin 和 注释之间至少有一个空格,=end 同之。 3.文档注释 3.1# 多个 # 表示的多行注释可被 rdoc 工具当成…

    Ruby语言教程 2022年12月1日
    01.3K0
  • 1.6Ruby语言的常量(Constant)

    1.常量声明 2.常量分类 常量没有实例常量和局部常量。 2.1全局常量 名称 描述 全局常量 定义在模块或类之外的常量,即为 Object 类的私有常量。 2.2成员常量 名称 描述 模块常量 定义在模块体中,但在模块体中的所有方法外的常量。 类常量 定义在类体中,但在类体中的所有方法外的常量。 3.赋值方式 除了赋…

    Ruby语言教程 2022年12月6日
    0530
  • 2.3Ruby类型之字符串(String)

    1.单引号字符串 单引号字符串只支持转义反斜线(\)和单引号(‘),不支持其余转义。 单引号字符串支持跨多行编写一行代码,但是不支持使用反斜线(\)转义行尾的换行符使之连续成一行显示。 单引号字符串不支持字符串插值。 2.双引号字符串 双引号字符串不仅支持转义反斜线(\)、单引号(‘)、双引号(“),还支持其余转义。 …

    Ruby语言教程 2023年1月3日
    01.1K0

发表回复

登录后才能评论