Scala – options

Scala Option: A Gentle Introduction

 

Scala Option[ T ] is a compartment for nothing or one component of a given kind. An Option[T] can be either Some[T] or No object, which addresses a missing worth. For example, the get technique for Scala’s Map produces Some(value) if a value comparing to a given key has been or None if the given key isn’t mention in the Map.

Scala’s Option type is a fundamental concept in functional programming that addresses the challenge of representing absence of a value in a type-safe manner. Option is used to encapsulate an optional value that may or may not exist, providing a safer alternative to null references commonly used in other languages.

The Option type in Scala is defined as a generic container that can hold either a Some value, representing the presence of a value, or None, representing the absence of a value. This approach eliminates the risk of null pointer exceptions and encourages safer and more predictable code.

Use case 1:

object prwatech {
   // Main method
    def main(args: Array[String])
    {
  
        // Creating a Map
        val name = Map("Abhi" -> "author", 
                        "Prabha" -> "coder")
  
        // Accessing keys of the map
        val x = name.get("Abhi")
        val y = name.get("Sandeep")
  
        // Displays Some if the key is
        // found else None 
        println(x)
        println(y)
    }
}	

Output:

Some(author)
None

Here, key of the value Abhi  so, Some is return for it but key of the value Sandeep so, None is return for it.

Use case 2:

Using Pattern Matching:
object prwatech {
   // Main method
    def main(args: Array[String])
    {
  
        // Creating a Map
        val name = Map("Abhi" -> "author", 
                        "Prabha" -> "coder")
  
        //Accessing keys of the map
        println(patrn(name.get("Abhi")))
        println(patrn(name.get("Rahul")))
    }
  
    // Using Option with Pattern 
    // matching
    def patrn(z: Option[String]) = z match 
    {
  
        // for 'Some' class the key for
        // the given value is displayed
        case Some(s) => (s)
  
        // for 'None' class the below string 
        // is displayed
        case None => ("key not found")
    }
}

Output:

author
key not found

Use case 3:

getOrElse() Method:

This technique returns either a value in the event that is available or a default value when its not available. Here, For Some class a value is return and for None class a default value returns.Scala Option: A Gentle Introduction

object prwatech {
   // Main method
    def main(args: Array[String])
    {
  
        // Using Some class
        val some:Option[Int] = Some(5)
  
        // Using None class
        val none:Option[Int] = None 
  
        // Applying getOrElse method
        val x = some.getOrElse(0)
        val y = none.getOrElse(1)
  
        // Displays the key in the 
        // class Some
        println(x)
  
        // Displays default value 
        println(y)
    }
}

Output:

5
1

Popular Tags:

How option is used in Scala Option function in scala option in scala option method scala Options use cases in Scala options uses in scala Scala options Scala options Explanation What is option in scala