Open In App

Scala | Ranges

Improve
Improve
Like Article
Like
Save
Share
Report

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 object
object 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)
    }
}


Output:

Range(3, 4, 5, 6, 7, 8, 9)
3
9

Thus, we can say that upper bound of the Range is not inclusive.

Operations performed on Ranges

  • 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 object
    object 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.

  • The upper bound of the Range can be made inclusive.
    Example:




    // Scala program for Ranges
      
    // Creating object
    object 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.

  • 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 object
    object 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.



Last Updated : 08 Apr, 2019
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads