Ranges
實現了ClosedRange <T>
庫中的通用介面。 它表示為可比型別定義的閉合數學區間。 它包含兩個作為開始和結束(endInclusive
)的端點。 在範圍內執行的操作是檢查元素是否包含在其中。 它是通過使用in
或!in
運算子來完成的。
算術級數由整數型別的累進表示,例如CharProgression
,IntProgression
,LongProgression
。 累進表示第一個元素,最後一個元素和非零的步長。 第一個元素是第一個,後續元素表示前一個元素加上步長,最後一個元素是最後一個元素,除非累進完成。
累進是指Iterable <N>
的子型別,其中N
是Char
,Int
或Long
型別。 由於累進是Iterable <N>
型別,因此它可以用於for
迴圈和函式,如filter
,map
等。
..
為整數型別建立一個物件,它實現了ClosedRange <T>
和Progression
。 例如,範圍型別LongRange
實現ClosedRange <Int>
並擴充套件LongProgression
,這意味著為LongRrogression
定義的所有操作也可用於LongRange
。 downTo()
和step()
函式生成的輸出始終是Progression
。
累進的最後一個元素是最大值,它不能大於正步長的結束值。 累進的最小值不小於負步長的最終值。 使用(last-first)%step == 0
檢查最後一個值。