Ruby 基础教程1-5
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?
#比较 条件
#
conents=['luo',1,"ming",23] if conents[1] > 0puts "conents[1]>0"
end
unless conents[1] != 1puts "conents[1]==1"
end
for item in conentscase 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=10b=20
c=a
d=10
puts "a比b大" if a>bputs "a不大于b" unless a>b
puts a.object_idputs a.__id__
puts b.object_id
if a.equal?(c)puts "a和c是一个对象"
end
if a==dputs "a的值等于d的值"
end
if a.equal?(d)
puts "a和d不是一个对象"
end