雷林鹏分享:Ruby 语法】的更多相关文章

Ruby 循环 Ruby 中的循环用于执行相同的代码块若干次.本章节将详细介绍 Ruby 支持的所有循环语句. Ruby while 语句 语法 while conditional [do] code end 当 conditional 为真时,执行 code.while 循环的 conditional 通过保留字 do.一个换行符.反斜线 \ 或一个分号 ; ,来与 code 分离开. 实例 #!/usr/bin/ruby $i = 0 $num = 5 while $i < $num do…
Ruby 语法 让我们编写一个简单的 Ruby 程序.所有的 Ruby 文件扩展名都是 .rb.所以,把下面的源代码放在 test.rb 文件中. #!/usr/bin/ruby -w puts "Hello, Ruby!"; 在这里,假设您的 /usr/bin 目录下已经有可用的 Ruby 解释器.现在,尝试运行这个程序,如下所示: $ ruby test.rb 这将会产生下面的结果: Hello, Ruby! 您已经看到了一个简单的 Ruby 程序,现在让我们看看一些 Ruby 语…
Ruby 命令行选项 Ruby 一般是从命令行运行,方式如下: $ ruby [ options ] [.] [ programfile ] [ arguments ... ] 解释器可以通过下列选项被调用,来控制解释器的环境和行为. 选项描述 -a与 -n 或 -p 一起使用时,可以打开自动拆分模式(auto split mode).请查看 -n 和 -p 选项. -c只检查语法,不执行程序. -C dir在执行前改变目录(等价于 -X). -d启用调试模式(等价于 -debug). -F p…
Ruby 注释 注释是在运行时会被忽略的 Ruby 代码内的注释行.单行注释以 # 字符开始,直到该行结束,如下所示: #!/usr/bin/ruby -w # 这是一个单行注释. puts "Hello, Ruby!" 当执行时,上面的程序会产生以下结果: Hello, Ruby! Ruby 多行注释 您可以使用 =begin 和 =end 语法注释多行,如下所示: #!/usr/bin/ruby -w puts "Hello, Ruby!" =begin 这是一…
Ruby 运算符 Ruby 支持一套丰富的运算符.大多数运算符实际上是方法调用.例如,a + b 被解释为 a.+(b),其中指向变量 a 的 + 方法被调用,b 作为方法调用的参数. 对于每个运算符(+ - * / % ** & | ^ << >> && ||),都有一个相对应的缩写赋值运算符(+= -= 等等). Ruby 算术运算符 假设变量 a 的值为 10,变量 b 的值为 20,那么: 运算符描述实例 +加法 - 把运算符两边的操作数相加a +…
Ruby 判断 Ruby 提供了其他现代语言中很常见的条件结构.在这里,我们将解释所有的条件语句和 Ruby 中可用的修饰符. Ruby if...else 语句 语法 if conditional [then] code... [elsif conditional [then] code...]... [else code...] end if 表达式用于条件执行.值 false 和 nil 为假,其他值都为真.请注意,Ruby 使用 elsif,不是使用 else if 和 elif. 如果…
Ruby 块 您已经知道 Ruby 如何定义方法以及您如何调用方法.类似地,Ruby 有一个块的概念. 块由大量的代码组成. 您需要给块取个名称. 块中的代码总是包含在大括号 {} 内. 块总是从与其具有相同名称的函数调用.这意味着如果您的块名称为 test,那么您要使用函数 test 来调用这个块. 您可以使用 yield 语句来调用块. 语法 block_name{ statement1 statement2 .......... } 在这里,您将学到如何使用一个简单的 yield 语句来调…
Ruby 方法 Ruby 方法与其他编程语言中的函数类似.Ruby 方法用于捆绑一个或多个重复的语句到一个单元中. 方法名应以小写字母开头.如果您以大写字母作为方法名的开头,Ruby 可能会把它当作常量,从而导致不正确地解析调用. 方法应在调用之前定义,否则 Ruby 会产生未定义的方法调用异常. 语法 def method_name [( [arg [= default]]...[, * arg [, &expr ]])] expr.. end 所以,您可以定义一个简单的方法,如下所示: de…
Ruby 模块(Module) 模块(Module)是一种把方法.类和常量组合在一起的方式.模块(Module)为您提供了两大好处. 模块提供了一个命名空间和避免名字冲突. 模块实现了 mixin 装置. 模块(Module)定义了一个命名空间,相当于一个沙箱,在里边您的方法和常量不会与其他地方的方法常量冲突. 语法 module Identifier statement1 statement2 ........... end 模块常量命名与类常量命名类似,以大写字母开头.方法定义看起来也相似:…
Ruby 文件的输入与输出 Ruby 提供了一整套 I/O 相关的方法,在内核(Kernel)模块中实现.所有的 I/O 方法派生自 IO 类. 类 IO 提供了所有基础的方法,比如 read. write. gets. puts. readline. getc 和 printf. 本章节将讲解所有 Ruby 中可用的基础的 I/O 函数.如需了解更多的函数,请查看 Ruby 的 IO 类. puts 语句 在前面的章节中,您赋值给变量,然后使用 puts 语句打印输出. puts 语句指示程序…