1.条件语句
  • if
  • unless
  • case
       unless和if相反,条件不成立则执行

 

2.条件  除了 false和nil 其他都是true

 

3.unless 语法
    
       unless 条件
             处理
       end

 

4.case语句

 

case 比较对象
      when 值1
      when 值2
      when 值3
      else
      end

 

when后面,ruby是用'==='做比较,'==='比较,
                   数值和字符串则比较值相等
                   还可以比较'比较对象'是否属于某一类型
                   还可以比较正则表达式是否匹配
                   还可以比较是否属于一个范围
       另外when指定的对象在'==='左边
    
5.if unless修饰符

  • puts "a比b大" if a>b
  • puts "a不大于b" unless a>b
6.对象标识
  • some.object_id 或者 some.__id__取得对象标示
  • equal?方法判断两个对象id是否一致,是否指向同一个对象
  • ==判断对象值是否相等
  • eql? 严谨判断是否相等 1.0==1 =>true   1.0 eql? 1=> false hash比较用eql?
 

#encoding:GBK
#比较 条件
#

 
 

conents=['luo',1,"ming",23]

 

if conents[1] > 0
     puts "conents[1]>0"
end

 

unless conents[1] != 1
     puts "conents[1]==1"
end

 

for item in conents
     case item
     when String       #匹配类型
          puts "item is String"
     when /ing/        #匹配正则表达式
          puts "item match ing"
     when 0..3         #匹配范围
          puts "item between 0 ,3 "
     when 12,13,23,25  #匹配枚举
          puts "one of [12,13,23,25]"
     else
          puts "nothing match"
     end
end

 

a=10
b=20
c=a
d=10

 

puts "a比b大" if a>b
puts "a不大于b" unless a>b

 

puts a.object_id
puts a.__id__
puts b.object_id

 
 

if a.equal?(c)
     puts "a和c是一个对象"
end

 

if a==d
     puts "a的值等于d的值"
end
if a.equal?(d)
     puts "a和d不是一个对象"
end

Ruby 基础教程1-5的更多相关文章

  1. 1月10日 ruby基础教程,查漏补缺; 2月22日 Exception补充

    https://ruby-doc.org/core-2.5.0/Exception.html 1月20日练习完1,2章. 第一章 初探 ‘’单引号不执行转义符. \t 制表符.\n 换行符. p me ...

  2. Ruby基础教程

    一.Ruby基础知识 1.关于Ruby Ruby是脚本语言 Ruby是面向对象语言 Ruby是跨平台语言 Ruby是开放源码软件 2.Ruby入门书籍推荐 <Ruby.Programming向R ...

  3. Ruby 基础教程 第二部分 Ruby 的基础 第4章

    第二部分 Ruby 的基础 第4章~第6章 这一部分是 Ruby 编程需要遵守的规则. 第四章 对象,变量与常量 对象 & 类 对象的常见种类: 数值对象 字符串对象 数组.散列对象 正则表达 ...

  4. Ruby 基础教程 第一部分总结

    第一部分:Ruby 初体验 第一章: Ruby 初探 前言 开头的这一章节讲了一些十分基础的内容,重要的几个话题有: ruby 命令的执行方法 对象.方法的概念 常见的打印方法 ruby 命令的执行方 ...

  5. Ruby 基础教程1-4

    1.对象 数值对象 字符串对象 数组对象,散列对象 正则表达式对象 时间对象 文件对象 符号对象 2.类 Numeric String Array Hash Regexp File Symbol 3. ...

  6. Ruby 基础教程 1-1

    1.指定编码方式       第一种 在代码文件首行通过 #encoding:GBK的方式     第二种  ruby -E UTF-8 文件名称     第三种  irb  -E UTF-8   2 ...

  7. Ruby基础教程 1-10

    类结构 1.数值类结构     Fixnum到Bignum会自动转换   2.常用数值表示   3. ans=10.divmod(3) ans[0]是商  ans[1]是余数   4.实例方法roun ...

  8. Ruby 基础教程1-9

    异常 1.异常结构      [ begin]          ...     rescue         [retry]          ...     [ensure]          . ...

  9. ruby 基础教程1-8-1

    1.":class, instance_of?, :is_a?"都是Object类的方法,每个对象都可以调用 2.":class"方法用户获取对象归属类的名称 ...

随机推荐

  1. 批量压缩文件夹到Zip文件

    实现效果: 实现代码:

  2. R语言学习笔记1——R语言中的基本对象

    R语言,一种自由软件编程语言与操作环境,主要用于统计分析.绘图.数据挖掘.R本来是由来自新西兰奥克兰大学的Ross Ihaka和Robert Gentleman开发(也因此称为R),现在由“R开发核心 ...

  3. mybatis的resultMap自定义结果映射规则

    dao接口 User myGetUserById(Integer id); sql xml自定义封装规则 <!--自定义某个javabean的封装规则 type:自定义规则的java类型 id: ...

  4. spring加载属性(properties)文件

    一.注解方式加载 jdbc.driver=org.mariadb.jdbc.Driver jdbc.url=jdbc:mariadb://localhost:3306/kt jdbc.user=roo ...

  5. Xcode 7提示App Transport Security has blocked a cleartext HTTP (http://) resource load的解决办法

    Xcode 7提示App Transport Security has blocked a cleartext HTTP (http://) resource load的解决办法   今天使用Xcod ...

  6. EF Core 2.1 中的 Eager loading、Explicit loading和LazyLoading (转自MSDN)

    Entity Framework Core allows you to use the navigation properties in your model to load related enti ...

  7. 100个常用的linux命令(转)

    来源:JavaRanger – javaranger.com   http://www.javaranger.com/archives/907 1,echo “aa” > test.txt 和 ...

  8. 竞赛题解 - CF Round #524 Div.2

    CF Round #524 Div.2 - 竞赛题解 不容易CF有一场下午的比赛,开心的和一个神犇一起报了名 被虐爆--前两题水过去,第三题卡了好久,第四题毫无头绪QwQ Codeforces 传送门 ...

  9. mysql alter 增加修改表结构及约束

    1) 加索引,添加时若未指定索引名,默认为字段名   mysql> alter table 表名 add index 索引名 (字段名1[,字段名2 …]); 例子: mysql> alt ...

  10. linux系统基础之六--系统引导(基于centos7.4 1708)