Scala之旅-函数详解
来源:互联网 发布:常州骏飞网络 编辑:程序博客网 时间:2024/05/16 19:47
1.Scala的函数默认都有返回,Unit类似C#里面的void
def funtion(): Unit ={ //do something }
以上的无返回值函数可以简写和C#类似
def Funtion(){ //do something }
2.基于简洁的追求,Scala可以偷懒的地方就 ,如下是带返回值的3个等价函数
def addA(x:Int):Int={x+100} def addB(x:Int)=x+100 //上面的简写 var addC=(x:Int)=>x+100 //这个类似于Lamda
3.递归函数必须声明其返回值的类型,如下面的阶乘
def fac(n:Int):Int=if(n>1) n*fac(n-1) else 1
def combine(str1:String,str2:String="I",str3:String="love")=str2+" "+str3+" "+str1
5.可变参数函数和C#中的param类型类似,下面是求1-5的和
def sum(args:Int*)={ var result=0 for(arg<-args)result+=arg result } def main(args:Array[String]){ println(sum(1,2,3,4,5)) //println(sum(1 to 5:_*))同上 }
6.lazy关键字,延迟加载 类似于EF框架的延迟查询。用的时候才会去实例化
lazy val file=Source.fromFile("d:\\t1.txt") for(line<-file.getLines()){ println(line) }如:file若为空,你不使用file的时候是不会报错的
0 0
- Scala之旅-函数详解
- 十. Scala函数详解
- Scala之旅-class和object详解
- Scala之旅-class和object详解
- Scala之旅-class和object详解
- Scala之旅-class和object详解
- Scala之旅-class和object详解
- Scala之旅-高阶函数
- Scala基础之函数
- scala学习之函数
- Scala基础知识之函数
- Scala之偏函数
- Scala之主构造函数
- Scala之主构造函数
- Scala之高阶函数
- Scala之高阶函数
- Scala 之 高阶函数
- Scala入门之函数进阶
- Aizu 2450 Do use segment tree LCT
- AI---个人主页
- HDU 2500 做一个正气的杭电人(水~)
- 13种排序算法详解(相当清楚,还附有flash动画)
- QT5 学习之路10---Qt 模块简介
- Scala之旅-函数详解
- HDU 2502 月之数(水~)
- 【BZOJ】【P4264】【小C找朋友】【题解】【hash】
- LeetCode 066 Plus One
- UserDefault *defaults = UserDefault::getInstance();数据持久性
- eclipse插件开发 plugin.xml extensions下右键 没有提示
- socket链接和http链接
- C语言中函数参数为什么是由右往左入栈的?
- 仿WebQQ界面