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。

  如果 conditional 为真,则执行 code。如果 conditional 不为真,则执行 else 子句中指定的 code。

  if 表达式的 conditional 通过保留字 then、一个换行符或一个分号,来与代码分离开。

  实例

  #!/usr/bin/ruby

  x=1

  if x > 2

  puts "x is greater than 2"

  elsif x <= 2 and x!=0

  puts "x is 1"

  else

  puts "I can't guess the number"

  end

  x is 1

  Ruby if 修饰符

  语法

  code if condition

  如果 conditional 为真,则执行 code。

  实例

  #!/usr/bin/ruby

  $debug=1

  print "debug\n" if $debug

  这将产生以下结果:

  debug

  Ruby unless 语句

  语法

  unless conditional [then]

  code

  [else

  code ]

  end

  如果 conditional 为假,则执行 code。如果 conditional 为真,则执行 else 子句中指定的 code。

  实例

  #!/usr/bin/ruby

  x=1

  unless x>2

  puts "x is less than 2"

  else

  puts "x is greater than 2"

  end

  这将产生以下结果:

  x is less than 2

  Ruby unless 修饰符

  语法

  code unless conditional

  如果 conditional 为假,则执行 code。

  实例

  #!/usr/bin/ruby

  $var = 1

  print "1 -- Value is set\n" if $var

  print "2 -- Value is set\n" unless $var

  $var = false

  print "3 -- Value is set\n" unless $var

  这将产生以下结果:

  1 -- Value is set

  3 -- Value is set

  Ruby case 语句

  语法

  case expression

  [when expression [, expression ...] [then]

  code ]...

  [else

  code ]

  end

  比较 case 所指定的 expression,当使用 === 运算符指定时,执行匹配的 when 子句的 code。

  when 子句所指定的 expression 背当作左操作数。如果没有匹配的 when 子句,case 执行 else 子句的代码。

  when 语句的表达式通过保留字 then、一个换行符或一个分号,来与代码分离开。

  因此:

  case expr0

  when expr1, expr2

  stmt1

  when expr3, expr4

  stmt2

  else

  stmt3

  end

  基本上类似于:

  _tmp = expr0

  if expr1 === _tmp || expr2 === _tmp

  stmt1

  elsif expr3 === _tmp || expr4 === _tmp

  stmt2

  else

  stmt3

  end

  实例

  #!/usr/bin/ruby

  $age = 5

  case $age

  when 0 .. 2

  puts "baby"

  when 3 .. 6

  puts "little child"

  when 7 .. 12

  puts "child"

  when 13 .. 18

  puts "youth"

  else

  puts "adult"

  end

  这将产生以下结果:

  little child

  本文转载自:w3cschool(编辑:雷林鹏 来源:网络)

雷林鹏分享:Ruby 判断的更多相关文章

  1. 雷林鹏分享:Ruby 循环

    Ruby 循环 Ruby 中的循环用于执行相同的代码块若干次.本章节将详细介绍 Ruby 支持的所有循环语句. Ruby while 语句 语法 while conditional [do] code ...

  2. 雷林鹏分享:Ruby 类和对象

    Ruby 类和对象 Ruby 是一种完美的面向对象编程语言.面向对象编程语言的特性包括: 数据封装 数据抽象 多态性 继承 这些特性将在 面向对象的 Ruby 中进行讨论. 一个面向对象的程序,涉及到 ...

  3. 雷林鹏分享:Ruby 正则表达式

    Ruby 正则表达式 正则表达式是一种特殊序列的字符,它通过使用有专门语法的模式来匹配或查找其他字符串或字符串集合. 语法 正则表达式从字面上看是一种介于斜杠之间或介于跟在 %r 后的任意分隔符之间的 ...

  4. 雷林鹏分享:Ruby CGI 编程

    Ruby CGI 编程 Ruby 是一门通用的语言,不仅仅是一门应用于WEB开发的语言,但 Ruby 在WEB应用及WEB工具中的开发是最常见的. 使用Ruby您不仅可以编写自己的SMTP服务器,FT ...

  5. 雷林鹏分享:C# 判断

    C# 判断 判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(可选的). 下面是大多数编程语言中典型的判断结构的一般形式: 判断语句 C ...

  6. 雷林鹏分享:Ruby 安装 - Windows

    Ruby 安装 - Windows 下面列出了在 Windows 机器上安装 Ruby 的步骤. 注意:在安装时,您可能有不同的可用版本. 下载最新版的 Ruby 压缩文件.请点击这里下载. 下载 R ...

  7. 雷林鹏分享:Ruby 安装 - Unix

    Ruby 安装 - Unix 下面列出了在 Unix 机器上安装 Ruby 的步骤. 注意:在安装之前,请确保您有 root 权限. 下载最新版的 Ruby 压缩文件.请点击这里下载. 下载 Ruby ...

  8. 雷林鹏分享:Ruby 命令行选项

    Ruby 命令行选项 Ruby 一般是从命令行运行,方式如下: $ ruby [ options ] [.] [ programfile ] [ arguments ... ] 解释器可以通过下列选项 ...

  9. 雷林鹏分享:Ruby 语法

    Ruby 语法 让我们编写一个简单的 Ruby 程序.所有的 Ruby 文件扩展名都是 .rb.所以,把下面的源代码放在 test.rb 文件中. #!/usr/bin/ruby -w puts &q ...

随机推荐

  1. amaze ui实现下拉列表

    对amaze ui ,只能说很好,很适合开发者使用,然后省略一万字. 今天记录下下拉列表的实现. 关于调用,这里不赘述了, 直接记录代码: <ul class="am-dropdown ...

  2. Object-C-block

    块是对c语言的一种扩展语法 块看起来像函数,不同的是,快可以直接写在函数内部 块能够作为参数传递给函数或者方法 void sayHello(){NSLog(@"hello!");} ...

  3. swift 之 as、as!、as?

    1,as使用场合(1)从派生类转换为基类,向上转型(upcasts) class Animal {} class Cat: Animal {} let cat = Cat() let animal = ...

  4. Python: 读文件,写文件

    读写文件是最常见的IO操作.Python内置了读写文件的函数. 读写文件前,我们先了解一下,在磁盘上读写文件的功能都是有操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘,所以,读写文件就是请求 ...

  5. 轻型池不支持执行公共语言运行时(CLR)。禁用以下两个选项中的一个: “clr enabled”或“lightweight pooling”解决方法

    执行2变一下代码   : 注意:1表示启用,0表示禁用. sp_configure ; GO sp_configure ; GO sp_configure ; go RECONFIGURE; GO E ...

  6. 远程获得的有趣的linux命令

    使用这些工具从远程了解天气.阅读资料等. 我们即将结束为期 24 天的 Linux 命令行玩具日历.希望你有一直在看,如果没有,请回到开始,从头看过来.你会发现 Linux 终端有很多游戏.消遣和奇怪 ...

  7. SPI、CAN、I2C

    SPI是串行外设接口(Serial Peripheral Interface)的缩写.SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局 ...

  8. linux下如何源码安装expect

    1.作用 自动交互.比如如果用ssh登陆服务器,每次都输入密码,然而你觉得麻烦,那你就可以使用expect来做自动交互,这样的话就不用每次都输入密码 2.依赖 依赖tcl 3.获取源码 wget ht ...

  9. 关于jquery所有动画都有速度和动画的方向(在宽度方向上的动画)?

    不只是jquery的 animate 动画, 才有时间的 参数, 实际上, 在所有的动画中, 包括: show/hide/toggle, slideup/slidedown/slidetoggle, ...

  10. HDU 4638Group (莫队)

    Group Problem Description There are n men ,every man has an ID(1..n).their ID is unique. Whose ID is ...