scala中函數簡單使用記錄
阿新 • • 發佈:2018-07-09
introduce main 函數 true mys light str evel print
object funcHighLevel { def main(args: Array[String]): Unit = { // 創建一個匿名函數 val sayFunc = (name: String) => println("hello ," + name) // 定義一個方法傳入一個函數 def greeting(func: (String) => Unit, names: String) { func(names) } // 在定義一個 name,age是參數 val induceMyself = (name:String ,age:Int) => { println("hello,my name is " + name +",and i‘m " + age + " years old.") } // 這裏的fun是函數名,可以調整修改 def introduce(fun :(String , Int) => Unit , name:String , age:Int): Unit = { fun(name , age) } greeting(sayFunc, "yxj") // introduce(induceMyself , "yxj" , 30) val rs = Array(2, 3, 4, 5, 6).map((num: Int) => { num * num }) println(rs.mkString(",")) // 高階函數的另一個功能,就是將函數作為返回值 def getGreetingFunc(msg:String) = (name:String) => println(msg + " , " + name) // 傳入msg,返回一個函數,參數是name val greetingFunc = getGreetingFunc("hello") // 調用先返回的是一個函數 greetingFunc("yxj") // 匿名函數具體調用和執行 } }
scala中函數簡單使用記錄