Option类型
来源:互联网 发布:淘宝美工好做吗 编辑:程序博客网 时间:2024/09/21 09:17
Scala语言中包含一个标准类型Option类型,代表可选值,Option类型的值可以有两个可能的值,一个为some(x) 其中x为有效值,另外一个为None对象,代表空值。
Option类型的值通常作为Scala集合类型(List,Map等)操作的返回类型。 比如Map的get方法:
scala> val capitals = Map("France"->"Paris", "Japan"->"Tokyo","China"->"Beijing")capitals: scala.collection.immutable.Map[String,String] = Map(France -> Paris, Japan -> Tokyo, China -> Beijing)scala> capitals get "France"res0: Option[String] = Some(Paris)scala> capitals get "North Pole"res1: Option[String] = None
将Option类型的值放开的一种常见的方法是使用模式匹配:
scala> def show(x:Option[String]) = x match{ case Some(s) => s case None => "?"}show: (x: Option[String])Stringscala> show (capitals get "China")res3: String = Beijingscala> show (capitals get "France")res4: String = Parisscala> show (capitals get "North Pole")res5: String = ?
Scala程序使用Option非常频繁,在Java中使用null 来表示空值,代码中很多地方都要添加Null检测,不然很容易出现NullPointException. 因此Java程序需要关心那些变量可能是Null,而这些变量出现Null的可能性很低,但一但出现,很难查出为什么出现NullPointerException.
Scala的Option类型可以避免这种情况,因此Scala应用推荐使用Option类型来代表一些可选值。使用Option类型,读者一眼就可以看出这种类型的值可能为None。
0 0
- Option类型
- 类型 Option
- 【C#】22. Option类型
- Scala option类型和偏函数
- Scala option类型和偏函数
- Option
- Option
- Scala新手指南中文版 -第五篇 The Option Type(Option类型)
- Scala新手指南中文版 -第五篇 The Option Type(Option类型)
- F#入门-第二章 F#基础-第十九节 option类型
- 5.3.4 F# 中使用选项(option)类型
- tcp协议头分析之-option类型列举
- 5.3.4 F# 中的选项(option)类型
- Programming Scala第5章demo02 Option类型
- Scala中的模式匹配——Option类型中的模式匹配
- Select 的绑定值为对象类型时用法 同时获取option选项的label和value值
- option对象
- Option Explicit
- 画点point
- 十四个很准的心理暗示
- 6个值得推荐的Android开源框架简介
- ubuntu sudo命令tab自动补全
- UIBezierPath绘制图形的常用方法详解
- Option类型
- 机器学习算法
- 局部变量的强指针破解循环保留
- shell脚本报错:-bash: xxx: /bin/sh^M: bad interpreter: No such file or directory
- android学习之contentProvider
- java 死锁
- Maven学习(三)- 使用Maven构建Web项目
- Objective-C 编码建议<转载>
- 数据绑定(data binding)