`

Scala编程之Option

 
阅读更多

一、总述

       在《Scala编程之样本类与模式匹配》的文章中,鄙人以一个实例介绍了样本类与模式匹配,本篇介绍一个更有趣的东西:Option。

       Scala为可选值提供了一个标准类型:Option。这种类型有两个值:Some(x)和None,其中x表示实际值,而None对象代表缺省值。

       下面通过编写一个简单的实例实现两种功能:Option类型的两种值;解析Option类型两种值中所对应的实际值。

 

二、实例展示

       定义一个object,其名为OptionClass。

/**
  * Created by user on 2016/1/21.
  */
object OptionClass {
    def paramConver(key: String): Option[String] = {
        val paramMap = Map("Beijing" -> "China","NewYork" -> "America",
                           "Pairs" -> "France","Tokyo" -> "Japan")
        paramMap get(key)
    }

    def show(x: Option[String]) = x match {
        case Some(s) => s
        case None => "I do not know my country"
    }

    def main(args: Array[String]) {
        val value1 = paramConver("Beijing")
        println("Option one form: " + value1)

        val value2 = paramConver("Shanghai")
        println("Option another form: " + value2)

        val value3 = show(paramConver("NewYork"))
        println("Option resolve Some(x) form and x: " + value3)

        val value4 = show(paramConver("Nanjing"))
        println("Option resolve None form and that value: " + value4)
    }
}

 

三、测试结果

       Option one form: Some(China)

       Option another form: None

       Option resolve Some(x) form and x: America

       Option resolve None form and that value: I do not know my country

 

四、后记

       如果有兴趣的朋友,可以根据自己的需要来编写属于自己的程序,从而达到对Scala中Option类型的理解。

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics