本文概述
- 范围作为序列
- 条件范围
- 区间为间隔
- Ruby反向范围
其中包含..的范围从头到尾都包括在内。其中包含… 的范围专门运行最终值。
puts (-5..-1).to_aputs (-5...-1).to_aputs ('a'..'e').to_aputs ('a'...'e').to_a
输出
文章图片
Ruby有多种定义范围的方法。
- 范围作为序列
- 条件范围
- 间隔范围
我们采用的样本范围是0到5。在此范围内执行以下操作。
例:
#!/usr/bin/ruby range = 0..5 puts range.include?(3) ans = range.min puts "Minimum value is #{ans}" ans = range.max puts "Maximum value is #{ans}" ans = range.reject {|i| i <
5 } puts "Rejected values are #{ans}" range.each do |digit| puts "In Loop #{digit}" end
输出
文章图片
条件范围 范围也定义为条件表达式。在一组行中定义了不同的条件。这些条件包含在start语句和end语句中。
例:
#!/usr/bin/ruby budget = 50000 watch = case budget when 100..1000 then "Local" when 1000..10000 then "Titan" when 5000..30000 then "Fossil" when 30000..100000 then "Rolex" else "No stock" end puts watch
输出
文章图片
区间为间隔 范围也可以根据间隔来定义。间隔由===大小写相等运算符表示。
例:
#!/usr/bin/ruby if (('a'..'z') === 'v') puts "v lies in the above range" end if (('50'..'90') === 99) puts "z lies in the above range" end
输出
文章图片
Ruby反向范围 Ruby反向范围运算符不返回任何值。如果左侧值大于某个范围内的右侧值, 则不会返回任何值。
例:
#!/usr/bin/ruby puts (5..1).to_a
上例的输出将不返回任何内容。
要打印反向订单, 可以在正常范围内使用反向方法, 如下所示。
例:
#!/usr/bin/ruby puts (1..5).to_a.reverse
【Ruby范围解释和用法】输出
文章图片
推荐阅读
- Ruby OOPs概念(面向对象编程)
- Ruby数组介绍和用法图解
- Ruby LDAP开发实战和原理全解
- Ruby多线程编程用法全解
- Ruby模块介绍和用法示例
- Ruby迭代器用法详细图解
- Ruby异常用法示例详细图解
- Ruby文件I/O操作示例详细图解
- Ruby日期和时间处理和用法