scala函数相关

原创
2015/09/10 12:07
阅读数 217

在scala中,函数用关键字def定义

函数的标准版

def fun1(x:Int = 10):Int = {//定义函数时直接给定默认值 
 return x+1; 
}
def fun2(x:Int) = x+1;//定义函数的快速方式 
//def fun2 = fun1;报错,提示少了个参数,需要加下划线 ,下划线在scala中是通配符 
def fun2 = fun1 _;

匿名函数

(x:Int) => x+1;
var add =  (x:Int) => x+1;//匿名函数赋值给add
var add1 = add;//再赋值给add1,这个时候不需要加下划线。

{ i: Int =>
 println("hello world")
 i * 2
}

嵌套函数

在函数中定义函数,其中fun2只能在fun1中使用。

def fun1(a:Int) = {
    def fun2(b:Int) = {
        println(b);
    }
    fun2(a);
}



展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部