Scala组合函数是一种在程序中组合函数的方法,即混合多个函数以提取一些结果。在Scala编程语言中,有多种方法来定义函数的组成。他们是,
使用 compose 关键字
使用 andthen 关键字
将方法传递给方法
Scala中的compose关键字对使用“ val”关键字定义的方法有效。
语法:
(method1 compose method2)(parameter)
程序:
object MyObject 
{ 
	def main(args: Array[String]) 
	{ 
		println("百分比是 "+(div compose mul)(435)) 
	} 
	
	val mul=(a: Int)=> { 
		a * 100
	} 
	
	val div=(a: Int) =>{ 
		a / 500
	} 
}输出结果
百分比是 87
对使用val关键字function定义的函数起作用的另一个composition关键字是andThen。
语法:
(method1 andThen method2)(parameter)
程序:
object myObject 
{ 
	def main(args: Array[String]) 
	{ 
		println("百分比是 "+(mul andThen div)(435)) 
	} 
	
	val mul=(a: Int)=> { 
		a * 100
	} 
	
	val div=(a: Int) =>{ 
		a / 500
	} 
}输出结果
百分比是 87
在Scala中声明复合函数的另一种方法是将一种方法作为参数传递给另一种方法。
语法:
function1(function2(parameter))
程序:
object myObject 
{ 
	def main(args: Array[String]) 
	{ 
		println("百分比是 "+ (  div(mul(456)) ))
	} 
	
	val mul=(a: Int)=> { 
		a * 100
	} 
	
	val div=(a: Int) =>{ 
		a / 500
	} 
}输出结果
百分比是 91