偏函数
1.1 定义
偏函数提供了更简洁的语法,可以简化函数的定义。配合集合的函数式编程,可以让代码更加优雅。
所谓的偏函数是指 被包在花括号内没有 match的一组case语句 , 偏函数是PartialFunction[A, B]类型的的一个实例对
象, 其中A代表输入参数类型, B代表返回结果类型.
1.2 语法格式
val 对象名 :PartialFunction[类型1,类型2]= { //这对大括号及其内部的一组case语句, 就组成了一个偏函数.
case 值1 => 表达式1
case 值2 => 表达式2
case 值3 => 表达式3
...
}
1.3案例
def main(args: Array[String]): Unit = {
//1. 定义一个偏函数, 根据指定格式返回
val pf:PartialFunction[Int,String] = {
case 1 => "一"
case 2 => "二"
case 3 => "三"
case _ => "其他"
}
//2. 调用方法
println(pf(1))
println(pf(2))
println(pf(3))
println(pf(4))
}
Option类型
1.1概述
实际开发中, 在返回一些数据时, 难免会遇到空指针异常(NullPointerException), 遇到一次就处理一次相对来讲还是比较繁琐的. 在Scala中, 我们返回某些数据时,可以返回一个Option类型的对象来封装具体的数据,从而实现有效的避免空指针异常。
1.2格式
Scala中,Option类型表示可选值。这种类型的数据有两种形式:
-
Some(x) :表示实际的值
-
None :表示没有值
注意 : 使用getOrElse方法,当值为None时可以指定一个默认值.
案例
// 案例: 演示Option类型
object ClassDemo10 {
//1. 定义一个两个数相除的方法,使用Option类型来封装结果
def div(a:Int, b:Int) = {
if (b == 0) {
None //除数为0, 没有结果.
} else {
Some(a / b) //除数不为0, 返回具体的结果.
}
}