[修饰符] def 函数名 ( 参数列表 ) [:返回值类型] = {
函数体
}
private def test( s : String ) : Unit = {
println(s)
}
1)无参,无返回值
object ScalaFunction {
def main(args: Array[String]): Unit = {
def fun1(): Unit = {
println("函数体")
}
fun1()
}
}
2)无参,有返回值
object ScalaFunction {
def main(args: Array[String]): Unit = {
def fun2(): String = {
"zhangsan"
}
println( fun2() )
}
}
3)有参,无返回值
object ScalaFunction {
def main(args: Array[String]): Unit = {
def fun3( name:String ): Unit = {
println( name )
}
fun3("zhangsan")
}
}
4)有参,有返回值
object ScalaFunction {
def main(args: Array[String]): Unit = {
def fun4(name:String): String = {
"Hello " + name
}
println( fun4("zhangsan") )
}
}
5)多参,无返回值
object ScalaFunction {
def main(args: Array[String]): Unit = {
def fun5(hello:String, name:String): Unit = {
println( hello + " " + name )
}
fun5("Hello", "zhangsan")
}
}
6)多参,有返回值
object ScalaFunction {
def main(args: Array[String]): Unit = {
def fun6(hello:String, name:String): String = {
hello + " " + name
}
println( fun6("Hello", "zhangsan"))
}
}
object ScalaFunction {
def main(args: Array[String]): Unit = {
def fun7(names:String*): Unit = {
println(names)
}
fun7()
fun7( "zhangsan" )
fun7( "zhangsan", "lisi" )
}
}
object ScalaFunction {
def main(args: Array[String]): Unit = {
def fun8( name:String, password:String = "000000" ): Unit = {
println( name + "," + password )
}
fun8("zhangsan", "123123")
fun8("zhangsan")
}
}
object Function02 {
def main(args: Array[String]): Unit = {
def fun1(name: String ="lisi",password:String): Unit ={
println(name + password)
}
fun1(password = "123313")
}
}
object Function02 {
def main(args: Array[String]): Unit = {
def fun1(): String={
"za"
}
println(fun1())
}
}
object Function02 {
def main(args: Array[String]): Unit = {
def fun1(): String= "za"
println(fun1())
}
}
object Function02 {
def main(args: Array[String]): Unit = {
def fun1()="za"
println(fun1())
}
}
object Function02 {
def main(args: Array[String]): Unit = {
def fun1="za"
println(fun1)
}
}
object ScalaFunction {
def main(args: Array[String]): Unit = {
def fun5(): String = {
return "zhangsan"
}
println(fun5())
}
}
object ScalaFunction {
def main(args: Array[String]): Unit = {
def fun5(): Unit = {
return "zhangsan"
}
println(fun5())
}
}
object ScalaFunction {
def main(args: Array[String]): Unit = {
def fun5() {
return "zhangsan"
}
println(fun5())
}
}
object Function02 {
def main(args: Array[String]): Unit = {
def fun1(): String ={
"xiaobu"
}
}
}
object Function02 {
def main(args: Array[String]): Unit = {
()=>{
"xiaobu"
}
}
}
object Function02 {
def main(args: Array[String]): Unit = {
def fun1(): String ={
"zahnsgan"
}
val a = fun1()
println(a) //zahnsgan
println("````````")
def fun2(): Unit ={
println("lisi")
}
val b = fun2() //lisi
println(b) // ()
println("````````")
def fun3(): Unit ={
println("zhangsan")
}
val c = fun3 _ //将函数对象传给c
c() //()调用函数
}
}
val c :() = > unit = fun3 这里可以省略_
object Function02 {
def main(args: Array[String]): Unit = {
def test(f:() => Unit): Unit ={
f()
}
def fun1(): Unit ={
println("11111")
}
test(fun1)
println("****************")
def test1(f : (Int,Int) => Int): Unit ={
val i = f(10,20)
println(i)
}
def fun2(x :Int,y: Int): Int ={
x + y
}
test1(fun2)
println("****************")
def test2(f : (Int,Int) => Int): Int ={
f(10,20)
}
def fun3(x :Int,y: Int): Int ={
x + y
}
test1(fun3)
}
}
原文:https://www.cnblogs.com/xiao-bu/p/14787447.html