scala教程(二)

来源:互联网 发布:时间轴画图软件 编辑:程序博客网 时间:2024/06/16 02:13

1.这是scala基础系列教程,适合入门者学习。

2.函数

定义函数

//没有返回值的函数,Unit 类似voiddef error1(msg:String): Unit = {        println(msg)}// 类似上面的简写方式: 去掉Unitdef error2(msg:String){        println(msg)}//类似上面的简写方式: 去掉函数括号def error3(msg:String)=println(msg)//带默认值def error4(msg:String="我是默认值")=println(msg)

可变参数

 def sum(nums:Int*)={     var sum = 0     for(i <- nums){             sum += i     }     // 这里是函数返回sum     sum } // 调用 求1 到10 的和 println(sum(1,2,3,4,5,6,7,8,9,10))

匿名函数
格式: val 变量名 = (参数:类型) => 函数体

 var p = (msg:String) => println(msg) p("调用匿名函数")

高阶函数: 用函数作为形参或带返回值的函数

下面是参数是函数的例子:

// 定义一个 匿名函数var pFun = (msg:String)=>println(msg)// 定义一个高阶函数// 第一个参数为函数: p:(String)=>Unit 是函数的形式声明(p函数名,一个String类型参数,无返回值)//第二个参数为普通变量参数:def test(p:(String)=>Unit , msg:String)=p(msg)// 调用高阶函数test(pFun,"高阶函数")

下面是返回值是函数的例子:

// 定义一个匿名函数var pFun = (a:Int,b:Int)=>a+b// 定义一个高阶函数// 返回值为函数: (Int,Int)=>Int 是函数的形式声明(有两个Int参数,返回值是Int)// =号 后面的 就是具体的函数def sum():(Int,Int)=>Int = pFun//调用函数 ,求58 的和sum()(5,8)

Scala 函数柯里化

//普通函数定义def add(x:Int,y:Int)=x+y//换成柯里化 定义def add2(x:Int)(y:Int)= x +y//柯里化调用  (打印5和7的和)println(add2(5)(7))

函数就到这里,谢谢观看

老生常谈:深圳有爱好音乐的会打鼓(吉他,键盘,贝斯等)的程序员和其它职业可以一起交流加入我们乐队一起嗨。我的QQ:657455400 表演视频实例:https://v.qq.com/x/page/f0517awx0x4.html

阅读全文
'); })();
1 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 永城驾照 永城培训班 永城买房 永城辅导班 永城属于 永城婚姻网 永城装饰公司 永城蛋糕店 永城货运 永城装饰 永城美容院 徐州到永城 永城的驾校 永城公安 永城约会 永城的酒店 永城创业 永城鸡苗 永城 旅游 永城家居 永城名人 永城祛斑 永城婚姻 永城小姐 永城塑料厂 河南永城景区 义乌到永城 永城到商丘多少钱 永城公交 永城电玩 永城 驾校 永城学院 淮北到永城 永城煤业 永城男性医院 永城信用卡 永城冷库 永城小三 永城属于哪里 永城高中 永城水立方