{"id":5599,"date":"2020-09-30T10:37:49","date_gmt":"2020-09-30T10:37:49","guid":{"rendered":"https:\/\/prwatech.in\/blog\/?p=5599"},"modified":"2024-04-11T11:18:13","modified_gmt":"2024-04-11T11:18:13","slug":"functions-in-scala-programming-language-scala-functions-basics","status":"publish","type":"post","link":"https:\/\/prwatech.in\/blog\/scala\/scala-modules-scala\/functions-in-scala-programming-language-scala-functions-basics\/","title":{"rendered":"Scala &#8211; Functions"},"content":{"rendered":"\r\n<h3 class=\"has-medium-font-size wp-block-heading\"><span data-sheets-root=\"1\" data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;&lt;yoastmark class=\">Scala | Functions &#8211; Basics<\/span><\/h3>\r\n<p>&nbsp;<\/p>\r\n\r\n\r\n\r\n<p style=\"font-size: 17px;\">To execute a group of statements to perform a task a hundred times, we don\u2019t type them a multiple times. We combine them into a function, put a call to that function inside a loop, and make that loop run multiple times. it makes easier to debug and modify the lines of code. We can divide according to the tasks we carry out in our code.<\/p>\r\n<p>&nbsp;<\/p>\r\n<p>In Scala, functions are fundamental constructs that encapsulate reusable blocks of code and enable modular programming. Functions in Scala are first-class citizens, meaning they can be treated like any other value, such as integers or strings. This allows functions to be passed as arguments to other functions, returned from functions, and stored in variables.<\/p>\r\n<p>Scala supports both named functions defined with the <code>def<\/code> keyword and anonymous functions defined using function literals (<code>=&gt;<\/code>). Function parameters in Scala are explicitly typed, but type inference often allows for concise function definitions without specifying parameter types explicitly.<\/p>\r\n\r\n\r\n\r\n<h3>Mainly two types:<\/h3>\r\n\r\n\r\n\r\n<p>1.\u00a0\u00a0\u00a0\u00a0 In built Functions<\/p>\r\n\r\n\r\n\r\n<p>2.\u00a0\u00a0\u00a0\u00a0 User-defined Functions<\/p>\r\n\r\n\r\n\r\n\r\n\r\n<p class=\"has-medium-font-size\">Advance functions:<\/p>\r\n\r\n\r\n\r\n<p class=\"has-medium-font-size\">1.\u00a0\u00a0\u00a0\u00a0 HOF \u2013Higher Order Function<\/p>\r\n\r\n\r\n\r\n<p class=\"has-medium-font-size\">2.\u00a0\u00a0\u00a0\u00a0 Generic Function<\/p>\r\n\r\n\r\n\r\n<p class=\"has-medium-font-size\">3.\u00a0\u00a0\u00a0\u00a0 Lambda<\/p>\r\n\r\n\r\n\r\n<p class=\"has-medium-font-size\"><strong>Here are some use cases to define Functions in Scala:<\/strong>&#8211;<\/p>\r\n\r\n\r\n\r\n<p>1)<\/p>\r\n\r\n\r\n\r\n\r\n\r\n<p class=\"has-medium-font-size\"><strong>The Same Program can also be define using Lambda Function:<\/strong><\/p>\r\n\r\n\r\n\r\n\r\n\r\n<p class=\"has-medium-font-size\"><strong>It is not only specific to a <a href=\"https:\/\/www.tableau.com\/\">particular<\/a> Data <a href=\"https:\/\/prwatech.in\/blog\/\">Type<\/a>, Here in the Eg. You can have a look how to give a standard code for any Data Type<\/strong><\/p>\r\n\r\n\r\n\r\n\r\n\r\n<p>2) <strong>Area of circle<\/strong><\/p>\r\n\r\n\r\n\r\n<p>scala&gt; def area(radius:Int): Double = {3.14*radius*radius}<\/p>\r\n\r\n\r\n\r\n<p>scala&gt; area(6)<\/p>\r\n\r\n\r\n\r\n\r\n\r\n<p>3) <strong>Factorial of a number<\/strong><\/p>\r\n\r\n\r\n\r\n<p>#scala&gt; def factorial(n:Int):Int = if(n==0) 1 else n*factorial(n-1)<\/p>\r\n\r\n\r\n\r\n<p>scala&gt;\u00a0 factorial(8)<\/p>\r\n\r\n\r\n\r\n\r\n\r\n<p>Scala | Functions &#8211; Basics<\/p>\r\n","protected":false},"excerpt":{"rendered":"<p>Scala | Functions &#8211; Basics &nbsp; To execute a group of statements to perform a task a hundred times, we don\u2019t type them a multiple times. We combine them into a function, put a call to that function inside a loop, and make that loop run multiple times. it makes easier to debug and modify [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[565,1698],"tags":[950,944,943,952,948,951,949,576,946,886,945],"class_list":["post-5599","post","type-post","status-publish","format-standard","hentry","category-scala","category-scala-modules-scala","tag-addition-in-scala","tag-functions-in-scala","tag-functions-in-scala-programming-language","tag-hof-function-scala","tag-lambda-function-scala","tag-multiplication-in-scala","tag-sample-program-in-scala","tag-scala","tag-scala-advanced-functions","tag-scala-functions","tag-types-of-functions-in-scala"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Scala | Functions - Basics - Prwatech<\/title>\n<meta name=\"description\" content=\"Master Scala | Functions - Basics - Dive deep with our expert instructors and comprehensive curriculum, Enroll Now.\" \/>\n<meta name=\"robots\" content=\"noindex, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Scala | Functions - Basics - Prwatech\" \/>\n<meta property=\"og:description\" content=\"Master Scala | Functions - Basics - Dive deep with our expert instructors and comprehensive curriculum, Enroll Now.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/prwatech.in\/blog\/scala\/scala-modules-scala\/functions-in-scala-programming-language-scala-functions-basics\/\" \/>\n<meta property=\"og:site_name\" content=\"Prwatech\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prwatech.in\/\" \/>\n<meta property=\"article:published_time\" content=\"2020-09-30T10:37:49+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-04-11T11:18:13+00:00\" \/>\n<meta name=\"author\" content=\"Prwatech\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@Eduprwatech\" \/>\n<meta name=\"twitter:site\" content=\"@Eduprwatech\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Prwatech\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/prwatech.in\/blog\/scala\/scala-modules-scala\/functions-in-scala-programming-language-scala-functions-basics\/\",\"url\":\"https:\/\/prwatech.in\/blog\/scala\/scala-modules-scala\/functions-in-scala-programming-language-scala-functions-basics\/\",\"name\":\"Scala | Functions - Basics - Prwatech\",\"isPartOf\":{\"@id\":\"https:\/\/prwatech.in\/blog\/#website\"},\"datePublished\":\"2020-09-30T10:37:49+00:00\",\"dateModified\":\"2024-04-11T11:18:13+00:00\",\"author\":{\"@id\":\"https:\/\/prwatech.in\/blog\/#\/schema\/person\/db90baff7744090b2288bbc98fea87f3\"},\"description\":\"Master Scala | Functions - Basics - Dive deep with our expert instructors and comprehensive curriculum, Enroll Now.\",\"breadcrumb\":{\"@id\":\"https:\/\/prwatech.in\/blog\/scala\/scala-modules-scala\/functions-in-scala-programming-language-scala-functions-basics\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/prwatech.in\/blog\/scala\/scala-modules-scala\/functions-in-scala-programming-language-scala-functions-basics\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/prwatech.in\/blog\/scala\/scala-modules-scala\/functions-in-scala-programming-language-scala-functions-basics\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/prwatech.in\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Scala &#8211; Functions\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/prwatech.in\/blog\/#website\",\"url\":\"https:\/\/prwatech.in\/blog\/\",\"name\":\"Prwatech\",\"description\":\"Share Ideas, Start Something Good.\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/prwatech.in\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/prwatech.in\/blog\/#\/schema\/person\/db90baff7744090b2288bbc98fea87f3\",\"name\":\"Prwatech\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/prwatech.in\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c00bafc1b04045f31eda917de39891456c44fa47c092b9bb6be0f860a3a30a2f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c00bafc1b04045f31eda917de39891456c44fa47c092b9bb6be0f860a3a30a2f?s=96&d=mm&r=g\",\"caption\":\"Prwatech\"},\"url\":\"https:\/\/prwatech.in\/blog\/author\/prwatech123\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Scala | Functions - Basics - Prwatech","description":"Master Scala | Functions - Basics - Dive deep with our expert instructors and comprehensive curriculum, Enroll Now.","robots":{"index":"noindex","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"en_US","og_type":"article","og_title":"Scala | Functions - Basics - Prwatech","og_description":"Master Scala | Functions - Basics - Dive deep with our expert instructors and comprehensive curriculum, Enroll Now.","og_url":"https:\/\/prwatech.in\/blog\/scala\/scala-modules-scala\/functions-in-scala-programming-language-scala-functions-basics\/","og_site_name":"Prwatech","article_publisher":"https:\/\/www.facebook.com\/prwatech.in\/","article_published_time":"2020-09-30T10:37:49+00:00","article_modified_time":"2024-04-11T11:18:13+00:00","author":"Prwatech","twitter_card":"summary_large_image","twitter_creator":"@Eduprwatech","twitter_site":"@Eduprwatech","twitter_misc":{"Written by":"Prwatech","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/prwatech.in\/blog\/scala\/scala-modules-scala\/functions-in-scala-programming-language-scala-functions-basics\/","url":"https:\/\/prwatech.in\/blog\/scala\/scala-modules-scala\/functions-in-scala-programming-language-scala-functions-basics\/","name":"Scala | Functions - Basics - Prwatech","isPartOf":{"@id":"https:\/\/prwatech.in\/blog\/#website"},"datePublished":"2020-09-30T10:37:49+00:00","dateModified":"2024-04-11T11:18:13+00:00","author":{"@id":"https:\/\/prwatech.in\/blog\/#\/schema\/person\/db90baff7744090b2288bbc98fea87f3"},"description":"Master Scala | Functions - Basics - Dive deep with our expert instructors and comprehensive curriculum, Enroll Now.","breadcrumb":{"@id":"https:\/\/prwatech.in\/blog\/scala\/scala-modules-scala\/functions-in-scala-programming-language-scala-functions-basics\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/prwatech.in\/blog\/scala\/scala-modules-scala\/functions-in-scala-programming-language-scala-functions-basics\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/prwatech.in\/blog\/scala\/scala-modules-scala\/functions-in-scala-programming-language-scala-functions-basics\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/prwatech.in\/blog\/"},{"@type":"ListItem","position":2,"name":"Scala &#8211; Functions"}]},{"@type":"WebSite","@id":"https:\/\/prwatech.in\/blog\/#website","url":"https:\/\/prwatech.in\/blog\/","name":"Prwatech","description":"Share Ideas, Start Something Good.","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/prwatech.in\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/prwatech.in\/blog\/#\/schema\/person\/db90baff7744090b2288bbc98fea87f3","name":"Prwatech","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/prwatech.in\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/c00bafc1b04045f31eda917de39891456c44fa47c092b9bb6be0f860a3a30a2f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c00bafc1b04045f31eda917de39891456c44fa47c092b9bb6be0f860a3a30a2f?s=96&d=mm&r=g","caption":"Prwatech"},"url":"https:\/\/prwatech.in\/blog\/author\/prwatech123\/"}]}},"_links":{"self":[{"href":"https:\/\/prwatech.in\/blog\/wp-json\/wp\/v2\/posts\/5599","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prwatech.in\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prwatech.in\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prwatech.in\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prwatech.in\/blog\/wp-json\/wp\/v2\/comments?post=5599"}],"version-history":[{"count":9,"href":"https:\/\/prwatech.in\/blog\/wp-json\/wp\/v2\/posts\/5599\/revisions"}],"predecessor-version":[{"id":11351,"href":"https:\/\/prwatech.in\/blog\/wp-json\/wp\/v2\/posts\/5599\/revisions\/11351"}],"wp:attachment":[{"href":"https:\/\/prwatech.in\/blog\/wp-json\/wp\/v2\/media?parent=5599"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prwatech.in\/blog\/wp-json\/wp\/v2\/categories?post=5599"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prwatech.in\/blog\/wp-json\/wp\/v2\/tags?post=5599"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}