scala偏函数小栗子

package cn.beicaiqm.scala.day04

/**
  * Created by Administrator on 2018/6/1.
  * 被包在花括号内没有match的一组case语句是一个偏函数,
  * 它是PartialFunction[-A, +B]的一个实例,A代表参
  * 数类型,B代表返回类型
  */
object Demo09PartialFunction {

  def main(args: Array[String]) {
    println(getInfo(20))
    println(getInfo2(20))

  }

  //使用模式匹配实现参数的判断
  def getInfo(age: Int): String = age match {
    case 10 => s"age=10"
    case 20 => s"age=20"
    case 30 => s"age=30"
  }

  //使用模式匹配实现参数的判断
  def getInfo1(age: Int): String = {
    age match {
      case 10 => s"age=10"
      case 20 => s"age=20"
      case 30 => s"age=30"
    }
  }


  def getInfo2: PartialFunction[Int,String] = {
    case 10 => s"PartialFunction-age=10"
    case 20 => s"PartialFunction-age=20"
    case 30 => s"PartialFunction-age=30"
  }

}

 

posted @ 2018-06-02 15:53  瓶子xf  阅读(136)  评论(0编辑  收藏  举报