1、定义一个函数为成员变量
val cook1 = (food1:String,food2:String)=>{println("我要做"+food1+","+food2)}
2、把一个函数当做一个方法传入
1、方法cookHamburger,传入三个参数food1,food2,与一个函数cookMethod
def cookHamburger(food1:String,food2:String,cookMethod:(String,String)=>String):String={
val hamburger = cookMethod(food1,food2)
return hamburger
}
2、定义方法cookMethod
def cooKMethod(food1:String,food2:String): String ={
"搅拌"+food1+"与"+food2+",并进行烘烤"
}
3、调用cookHamburger时,传入cookMethod
val hamburger = cookHamburger("面包片","酱牛肉",cooKMethod)
println(hamburger)
3、把函数作为一个返回值返回,也可知,scala中方法里面,可以定义方法。
//定义如何cook的方法
def getHowCook(name:String):(String,String)=>String={
if(name.equals("hamburger")){
def cookHamburger(food1:String,food2:String): String ={
"搅拌"+food1+"与"+food2+",并进行烘烤"
}
return cookHamburger
}else{
def cookAnyThing(food1:String,food2:String):String={
"弄熟"+food1+food2
}
return cookAnyThing
}
}
//获取cook方法,进行cook
val cook= getHowCook("hamburger")
print(cook("面包","牛肉"))
总结:scala中方法的使用
1、作为一个普通的方法
2、赋值给常量、变量
3、作为方法参数传递
4、作为返回值返回