Ruby Language
범위
수색…
시퀀스를 범위로
범위의 가장 중요한 사용은 시퀀스를 표현하는 것입니다.
통사론:
(begin..end) => this construct will include end value
(begin...end) => this construct will exclude end value
또는
Range.new(begin,end,exclude_end) => exclude_end is by default false
가장 중요한 end
값은 begin
값보다 커야하며, 그렇지 않으면 아무 것도 반환하지 않습니다.
예 :
(10..1).to_a #=> []
(1...3) #=> [1, 2]
(-6..-1).to_a #=> [-6, -5, -4, -3, -2, -1]
('a'..'e').to_a #=> ["a", "b", "c", "d", "e"]
('a'...'e').to_a #=> ["a", "b", "c", "d"]
Range.new(1,3).to_a #=> [1, 2, 3]
Range.new(1,3,true).to_a#=> [1, 2]
범위 반복
한 범위 내의 각 요소에 대해 손쉽게 작업을 수행 할 수 있습니다.
(1..5).each do |i|
print i
end
# 12345
날짜 사이의 범위
require 'date'
date1 = Date.parse "01/06/2016"
date2 = Date.parse "05/06/2016"
p "Period #{date1.strftime("%d/%m/%Y")} to #{date2.strftime("%d/%m/%Y")}"
(date1..date2).each do |date|
p date.strftime("%d/%m/%Y")
end
# "01/06/2016"
# "02/06/2016"
# "03/06/2016"
# "04/06/2016"
# "05/06/2016"
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow