一、总述
在《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类型的理解。