Scala – Apply Method

  • date 23rd April, 2021 |
  • by Prwatech |
  • 0 Comments

What is the apply function in Scala

In Scala, the apply function is a special method defined in companion objects of classes or in standalone objects. The primary purpose of the apply function is to provide a convenient way to create new instances of a class or invoke an object as if it were a function.

When you define an apply method in a companion object, you can use it to construct instances of the corresponding class without explicitly calling the new keyword. This allows for a more concise and readable syntax when creating instances. For example:

In this example, the apply method in the Person companion object enables us to create a new Person instance simply by calling Person("Alice", 30), which internally delegates to Person.apply("Alice", 30).

In Scala the apply() method is used to select an element present in the list by its index position.

use case 1:

scala> object prwa{

     def apply(name: String): String={

     "Hello %s".format(name)

     }

     }

object prwa

scala> prwa.apply("prava")

1scala> prwa("binoj")

use case 2:

scala> class Prwatech  {

     private val elements = Array("spark","scala","mysql")

  def apply(index:Int) = if(index<elements.length) elements(index) else "No element found"

  }

class Prwatech

scala> val Prwatech = new Prwatech

2scala> println(Prwatech(1))

scala> println(Prwatech(0))

4scala> println(Prwatech(2))

scala> println(Prwatech(3))

use case 3:

Scala> object prwatech{

     def apply(name: String): String={

     "My Name is %s".format(name)

     }

     }

object prwatech

scala> prwatech.apply("Mark")

scala> prwatech.apply("Steve")

 

What is the apply function in Scala

Quick Support

image image