大数据全系列 教程
1869个小节阅读:467.7k
目录
408考研
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
参数函数简化案例一,一个参数无返回值:
xxxxxxxxxx
package com.itbaizhan.chapter03
object FunctionToTypeArg2 {
def main(args: Array[String]): Unit = {
def funcA(fun:(String)=>Unit): Unit ={
fun("GTJin")
}
def funArg(name:String): Unit ={
println(name)
}
funcA(funArg)
//如果函数funArg只是被调用一次,可以进行简化
//首先省略def、函数名、返回值类型
funcA(
(name:String)=>{
println(name)
})
//函数体只有一行省略大括号
funcA(
(name:String)=>println(name)
)
//参数类型可以推导出来,也可以省略
funcA(
(name)=>println(name)
)
//只有一个参数,小括号也可以省略
funcA(
name=>println(name)
)
//还可以继续省略,以后在spark的代码中会遇到类似的用法
funcA(println(_))//匿名函数的至简原则的最简化版本
funcA(println)//该方式调用的不再是匿名函数的简化版了,而是调用println函数
//funcA(funArg)
}
}