即Range
比如,1..3 ,1...3
两个点包括末个数值3
三个点不包括3
r1 = 1..5
r2 = 1...5
r1.each do |var|
print var.to_s+","
end
puts "------"
r2.each do |var|
print var.to_s+","
end
puts "------"
输出
1,2,3,4,5,------
1,2,3,4,------
使用变量也可以
var = 5
r1 = 1..var
r1.each do |var|
print var.to_s+","
end
输出
1,2,3,4,5,
常用函数,包含,最大值,最小值
r1 = 1..5
# include
puts r1.include?(4)
puts r1.include?(6)
# min
puts r1.min
puts r1.begin
puts r1.first
# max
puts r1.max
puts r1.end
puts r1.last
输出
true
false
1
1
1
5
5
5
迭代器方法,to_a,reject(排除),select(包含),each
reject,转换为数组,排除部分
select,转换为数组,选择部分
r1 = 1..5
arr1 = r1.to_a
puts "arr1 = #{arr1}"
arr2 = r1.reject{|i|i<3}
puts "arr2 = #{arr2}"
arr3 = r1.select{|i|i<3}
puts "arr3 = #{arr3}"
r1.each do |var|
print var.to_s+","
end
输出
arr1 = [1, 2, 3, 4, 5]
arr2 = [3, 4, 5]
arr3 = [1, 2]
1,2,3,4,5,