一、Scala中的函数基础知识

1、基本语法 【函数和方法的区别】 【核心概念】 (1)为完成某一功能的程序语句的集合,称为函数。 (2)类中的函数称之方法。

【案例实操】 (1)Scala 语言可以在任何的语法结构中声明任何的语法 (2)函数没有重载和重写的概念;方法可以进行重载和重写 (3)Scala 中函数可以嵌套定义

【函数参数】 (1)可变参数 (2)如果参数列表中存在多个参数,那么可变参数一般放置在最后 (3)参数默认值,一般将有默认值的参数放置在参数列表的后面 (4)带名参数

二、函数至简原则

函数至简原则:能省则省 【至简原则细节】 (1)return 可以省略,Scala 会使用函数体的最后一行代码作为返回值

(2)如果函数体只有一行代码,可以省略花括号

(3)返回值类型如果能够推断出来,那么可以省略(:和返回值类型一起省略)

(4)如果有 return,则不能省略返回值类型,必须指定

(5)如果函数明确声明 unit,那么即使函数体中使用 return 关键字也不起作用

(6)Scala 如果期望是无返回值类型,可以省略等号

(7)如果函数无参,但是声明了参数列表,那么调用时,小括号,可加可不加

(8)如果函数没有参数列表,那么小括号可以省略,调用时小括号必须省略

(9)如果不关心名称,只关心逻辑处理,那么函数名(def)可以省略

三、匿名函数

【匿名函数】 没有名字的函数就是匿名函数。 (x:Int)=>{函数体} x:表示输入参数类型;Int:表示输入参数类型;函数体:表示具体代码逻辑

【传递匿名函数至简原则】 传递匿名函数至简原则: (1)参数的类型可以省略,会根据形参进行自动的推导

(2)类型省略之后,发现只有一个参数,则圆括号可以省略;其他情况:没有参数和参数超过 1 的永远不能省略圆括号。

(3)匿名函数如果只有一行,则大括号也可以省略

(4)如果参数只出现一次,则参数省略且后面参数可以用_代替

【函数闭包和柯里化】 闭包:如果一个函数,访问到了它的外部(局部)变量的值,那么这个函数和他所处的环境,称为闭包 函数柯里化:把一个参数列表的多个参数,变成多个参数列表。

四、高阶函数

1、函数可以作为值进行传递 2、函数可以作为参数进行传递 3、函数可以作为函数返回值返回

推荐链接

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。