1 / 2
文档名称:

scala中的四种类型.docx

格式:docx   大小:27KB   页数:2页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

scala中的四种类型.docx

上传人:liwenfei1314 2018/10/16 文件大小:27 KB

下载得到文件列表

scala中的四种类型.docx

相关文档

文档介绍

文档介绍:在 scala 中这四个类型名称很类似,作用确实完全不同的。
None 是一个 object ,是 Option 的子类型,定义如下
[java] view plain copy
print?
1. case object None extends Option[Nothing] {
2. def isEmpty = true
3. def get = throw new NoSuchElementException( "" )
4. }
scala 推荐在可能返回空的方法使用 Option[X] 作为返回类型。如果有值就返回
Some[x](Some 也是 Option 的子类 ) ,否则返回 None ,例如
[java] view plain copy
print?
1. def get(key: A): Option[B] = {
2. if (contains(key))
3. Some(getValue(key))
4. else
5. None
6. }
获得 Option 后,可以使用 get 获得包含的值,或者使用 getOrElse 获得默认值如果
isEmpty 为 true 。
Null 是所有 AnyRef 的子类,在 scala 的类型系统中, AnyRef 是 Any 的子类,同时
Any 子类的还有 AnyVal 。对应 java 值类型的所有类型都是 AnyVal 的子类。所以 Null
可以赋值给所有的引用类型 (AnyRef) ,不能赋值给值类型, 这个 java 的语义是相同的。
null 是 Null 的唯一对象。
Nothing 是所有类型的子类,也是 Null 的子类。 Nothing 没有对象,但是可以用来定
义类型。例如,如果一个方法抛出异常,则异常的返回值类型就是 Not