Scala中的函数

本文介绍了Scala中的函数特性,包括函数作为对象的概念以及多种不同的定义和使用方法。从简单的函数定义到复杂的表达式处理,展示了Scala语言的强大灵活性。

Scala中的函数


 


提纲

1、Scala中的函数简介

2、Scala中的函数的各种写法

 

1、Scala中的函数简介

===================

Scala是函数式编程和面向对象式编程的混合泛型语言,函数在Scala中犹如一个对象一样,可以赋给变量。

函数,又称函数字面量(function literal),也称值函数(function values),之所以这样称呼,是因为函数可以赋值给变量。

 

 

2、Scala中的函数的各种写法

========================

2.1 写法一

/*

函数字面量 function literal

=>左侧的表示输入,右侧表示转换操作

*/

scala> val increase=(x:Int)=>x+1

increase: Int => Int = <function1>

scala> println(increase(10))

11

 

2.2 写法二

scala> def increase(x : Int) = x + 1

 

2.3 多条语句时写法三

val increase = (x: Int) => {

println("xue")

println("xi")

x = x + 1

}

 

2.4 写法四

println(Array(1, 2, 3, 4).map((x : Int) => x + 1).mkString(","))

 

2.5 写法五

//花括弧写法

Array(1, 2, 3, 4).map{(x : Int) => x + 1}.mkString(",")

 

2.6 写法六

//省略.的写法

Array(1, 2, 3, 4) map{(x : Int) => x + 1} mkString(",")

 

2.7 写法七

//参数类型推断写法

Array(1, 2, 3, 4) map{(x) => x + 1} mkString(",")

 

2.8 写法八

//函数只有一个参数的话,可以省略()

Array(1, 2, 3, 4) map{x => x + 1} mkString(",")

 

2.9 写法九

//如果参数右边只出现一次,则可以进一步简化

Array(1, 2, 3, 4) map {_ + 1} mkString(",")

 

2.10 写法十

//val fun0 = 1 + _ 该方式不合法,因为无法进行类型推断

//值函数简化方式1

val fun1 = 1 + (_ : Double)

 

2.11 写法十一

//值函数简化方式2

val fun2 : (Double) => Double = 1 + _

 

转载于:https://www.cnblogs.com/zhangzl419/p/8110658.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值