×

Scala Tutorial

Scala Basics

Scala Control statements

Scala Functions

Scala Arrays

Scala Lists

Scala Strings

Scala Classes & Objects

Scala Collections

How to convert function to partial function in Scala?

By IncludeHelp Last updated : October 20, 2024

First, let's see what is a function and a partial function, and then we will see their conversion process.

Scala Function

Function in Scala is a block of code that is used to perform a specific task. Using a function you can name this block of code and reuse it when you need it.

Example

def divide100(a : Int) : Int = {
	return 100/a;
}

Partial Function

Partial function in Scala are functions that return values only for a specific set of values i.e. this function is not able to return values for some input values.

Example

def divide100 = new PartialFunction[Int , Int] {
    def isDefinedAt(a : Int) = a!=0
    def apply(a: Int) = 100/a
}

Convert function to partial function

You can replace a function with a partial function as the definition of the function cannot be changed by we will call the given function using our partial function which will convert the function to function.

Scala Program to convert function to partial function

//Convert function to partial function 
object MyClass {
    def divide100(x:Int) = 100/x;
    
    def dividePar = new PartialFunction[Int , Int] {
        def isDefinedAt(a : Int) = a!=0
        def apply(a: Int) = divide100(a)
    }
    
    def main(args: Array[String]) {
        print("100 divided by the number is " + dividePar(20));
    }
}

Output

100 divided by the number is 5

Comments and Discussions!

Load comments ↻





Copyright © 2024 www.includehelp.com. All rights reserved.