Scala 中的 Currying Functions函数

首页 / Scala入门教程 / Scala 中的 Currying Functions函数

Currying将一个包含多个参数的函数转换为一个函数链,每个函数都包含一个参数。咖喱函数定义了多个参数列表,如下所示-

语法

def strcat(s1: String)(s2: String) = s1 + s2

另外,您也可以使用以下语法来定义咖喱函数-

无涯教程网

语法

def strcat(s1: String) = (s2: String) => s1 + s2

以下是调用curried函数的语法-

语法

strcat("foo")("bar")

您可以根据需要在咖喱函数中定义两个以上的参数。尝试下面的示例程序以显示currying概念。

object Demo {
   def main(args: Array[String]) {
      val str1:String = "Hello, "
      val str2:String = "Scala!"
      
      println( "str1 + str2 = " +  strcat(str1)(str2) )
   }

   def strcat(s1: String)(s2: String) = {
      s1 + s2
   }
}

将上述程序保存在 Demo.scala 中。以下命令用于编译和执行该程序。

链接:https://www.learnfk.comhttps://www.learnfk.com/scala/currying-functions.html

来源:LearnFk无涯教程网

命令

\>scalac Demo.scala
\>scala Demo

输出

str1 + str2 = Hello, Scala!

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

技术与商业案例解读 -〔徐飞〕

React实战进阶45讲 -〔王沛〕

技术管理实战36讲 -〔刘建国〕

编译原理实战课 -〔宫文学〕

Spring编程常见错误50例 -〔傅健〕

程序员的测试课 -〔郑晔〕

深入剖析Java新特性 -〔范学雷〕

自动化测试高手课 -〔柳胜〕

结构执行力 -〔李忠秋〕

好记忆不如烂笔头。留下您的足迹吧 :)