定义:一种特殊的、带索引的、不可变数字等差序列。
- 其中包括从给定起点和终点、按照给定步长 的所有值。
- Range支持创建不同数据类型的数值序列,包括 Int、Long、Fload、Double 等
Range创建:
- 创建1 到 5的数值序列,不包括终点5,步长为1
scala> val r1 = Range(1,5) r1: scala.collection.immutable.Range = Range(1, 2, 3, 4) scala> val range1 = new Range(1,5,1) range1: scala.collection.immutable.Range = Range(1, 2, 3, 4) scala> r1 == range1 res72: Boolean = true
- 创建1 到 5的数值序列,包括终点 5,步长为1
scala> 1 to 5 res73: scala.collection.immutable.Range.Inclusive = Range(1, 2, 3, 4, 5) scala> 1.to(5) res74: scala.collection.immutable.Range.Inclusive = Range(1, 2, 3, 4, 5)
- 创建1 到 5 的数值序列, 不包括区间终点 5, 步长为1
scala> 1 until 5 res77: scala.collection.immutable.Range = Range(1, 2, 3, 4)
- 创建1 到 10的数值序列, 不包括区间终点 10, 步长为2
scala> 1 until 10 by 2 res78: scala.collection.immutable.Range = Range(1, 3, 5, 7, 9)
- 创建Float类型数值序列,从0.1f 到 1.0f,步长为0.2f
scala> 0.1f to 1.0f by 0.2f res79: scala.collection.immutable.NumericRange[Float] = NumericRange(0.1, 0.3, 0.5, 0.7, 0.9)