Scala | Ranges

08 Apr, 2019
The Range in Scala can be defined as an organized series of uniformly separated Integers. It is helpful in supplying more strength with less methods so, operations performed here are very quick. Some important points:
The Ranges can be utilized by the for loops for iteration.
It can be obtained using some predefined methods namely until, by, and to.
It is defined by three constants i.e, (start, end, and increment value).
Syntax:
val range = Range(x, y, z)
Where, x is the lower limit, y is the upper limit, and z is the increment.Example:
// Scala program for Ranges  // Creating objectobject GFG{      // Main method    def main(args: Array[String])    {          // applying range method        val x = Range(3, 10, 1)          // Displays given range        println(x)          // Displays starting value        // of the given range        println(x(0))          // Displays last value        // of the given range        println(x.last)    }}
Range(3, 4, 5, 6, 7, 8, 9)
3
9

Thus, we can say that upper bound of the Range is not inclusive.
If we want a range inclusive of the end value, we can also use the until method both until and Range methods are used for the same purpose.Example:// Scala program for Ranges  // Creating objectobject GFG{      // Main method    def main(args: Array[String])    {          // applying range method        val x = Range(0, 10, 2)          // applying until method        val y = 0 until 10 by 2          // Displays true if both the         // methods are equivalent        println(x == y)    }}Output:true
Here, by method performs the work of increment.
// Scala program for Ranges  // Creating objectobject GFG{      // Main method    def main(args: Array[String])    {          // applying range method        val x = Range(0, 10, 2)          // applying until method        val y = 0 until 10 by 2          // Displays true if both the         // methods are equivalent        println(x == y)    }}
true

Here, by method performs the work of increment.
The upper bound of the Range can be made inclusive.Example:// Scala program for Ranges  // Creating objectobject GFG{      // Main method    def main(args: Array[String])    {          // applying range method        val x = Range(1, 8)          // Including upper bound        val y = x.inclusive          // Displays all the elements        // of the range        println(y)    }}Output:Range(1, 2, 3, 4, 5, 6, 7, 8)
Here, inclusive is used to include upper bound of the Range.
// Scala program for Ranges  // Creating objectobject GFG{      // Main method    def main(args: Array[String])    {          // applying range method        val x = Range(1, 8)          // Including upper bound        val y = x.inclusive          // Displays all the elements        // of the range        println(y)    }}
Range(1, 2, 3, 4, 5, 6, 7, 8)

Here, inclusive is used to include upper bound of the Range.
If we want a range of integer values, we can use the to method both to and inclusive Ranges are equivalent.Example:// Scala program for Ranges  // Creating objectobject GFG{      // Main method    def main(args: Array[String])    {          // applying range method        val x = Range(1, 8)          // Including upper bound        val y = x.inclusive          // applying 'to' method        val z = 1 to 8          // Displays true if both the        // methods are equal        println(y == z)    }}Output:true
Thus, both the methods here performs the same task.
// Scala program for Ranges  // Creating objectobject GFG{      // Main method    def main(args: Array[String])    {          // applying range method        val x = Range(1, 8)          // Including upper bound        val y = x.inclusive          // applying 'to' method        val z = 1 to 8          // Displays true if both the        // methods are equal        println(y == z)    }}
true

Thus, both the methods here performs the same task.
Scala
Scala-Basics
Scala-Data Type
Scala
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.