Ruby 基础教程1-5
2016-08-23 17:11
417 查看
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
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 On Rails系列从入门到精通实战教程 Ruby基础教程下载
- Ruby的面向对象编程的基础教程
- 推荐网上编程教程,适应零基础:javascript、python、ruby 、java 、andriod
- Ruby 基础教程第4 版
- Ruby基础教程 1-10
- Ruby的基础语法入门学习教程
- Ruby 基础教程1-3
- Ruby 基础教程 1-1
- Ruby 基础教程(第5版)
- Ruby 基础教程1-7
- Ruby On Rails系列从入门到精通实战教程 Ruby基础教程下载
- Ruby on Rails中Rack中间件的基础学习教程
- Ruby 基础教程1-4
- Ruby 基础教程1-9
- Ruby基础教程(四)——运算符、异常、块
- Ruby 基础教程1-6
- Ruby On Rails系列从入门到精通实战教程(Ruby基础+Rails框架+网上商城项目实战)
- Ruby基础教程(三)——类和模块
- ruby 基础教程1-8-1
- Ruby 基础教程 1-2