Ranges
实现了ClosedRange
库中的通用接口。 它表示为可比类型定义的闭合数学区间。 它包含两个作为开始和结束(endInclusive
)的端点。 在范围内执行的操作是检查元素是否包含在其中。 它是通过使用in
或!in
运算符来完成的。
算术级数由整数类型的累进表示,例如CharProgression
,IntProgression
,LongProgression
。 累进表示第一个元素,最后一个元素和非零的步长。 第一个元素是第一个,后续元素表示前一个元素加上步长,最后一个元素是最后一个元素,除非累进完成。
累进是指Iterable
的子类型,其中N
是Char
,Int
或Long
类型。 由于累进是Iterable
类型,因此它可以用于for
循环和函数,如filter
,map
等。
..
为整数类型创建一个对象,它实现了ClosedRange
和Progression
。 例如,范围类型LongRange
实现ClosedRange
并扩展LongProgression
,这意味着为LongRrogression
定义的所有操作也可用于LongRange
。 downTo()
和step()
函数生成的输出始终是Progression
。
累进的最后一个元素是最大值,它不能大于正步长的结束值。 累进的最小值不小于负步长的最终值。 使用(last-first)%step == 0
检查最后一个值。