`
whitesock
  • 浏览: 478787 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

Nothing, Null, Nil, None & Unit in Scala

阅读更多

1 Nothing 是trait,定义为:final trait Nothing extends Any。Nothing处于Scala类型体系的最底层,是所有类型的子类型,Nothing没有实例。

 

2 Null 是trait,定义为:final trait Null extends AnyRef 。Null是所有引用类型的子类型,唯一的一个实例是null。

 

3 Nil 是case object,定义为case object Nil extends List[Nothing], 代表一个空list。由于Scala中的List是协变的,因此无论T是何种类型,Nil都是List[T]的实例。

 

4 None 是case object,定义为:case object None extends Option[Nothing],代表不存在的值。

 

5 Unit 是class,定义为:abstract final class Unit extends AnyVal。Unit跟Java中的void相当,当一个方法不返回任何值的时候,那么方法的类型是Unit。Unit唯一的一个实例是().

分享到:
评论
3 楼 fujohnwang 2011-09-11  
whitesock 写道
fujohnwang 写道
看scala那?呵呵
我都用它写了个消息中间件了

@seealso kafka

Not same thing, not same thought
2 楼 whitesock 2011-09-10  
fujohnwang 写道
看scala那?呵呵
我都用它写了个消息中间件了

@seealso kafka
1 楼 fujohnwang 2011-09-10  
看scala那?呵呵
我都用它写了个消息中间件了

相关推荐

    lua-cjson decode中null改成nil

    lua-cjson lua的cjson库 decode略做修改 结果中null还原成nil

    scala-2.9.2.jar

    import scala.annotation._ trait Func[T] { val zero: T def inc(t: T): T def dec(t: T): T def in: T def out(t: T): Unit } object ByteFunc extends Func[Byte] { override val zero: Byte = 0 ...

    IOS 基础之nil,NULL,NSNULL区别详解

    IOS 基础之nil,NULL,NSNULL区别详解 ① nil:一般赋值给空对象。 ② NULL:NULL 是一个通用指针(泛型指针)。 一般赋值给 nil 之外的其他空值。如SEL等。 ③ NSNULL:[NSNull null] 是一个对象,他用在不能使用 ...

    node-no-nil:从对象和数组中删除nil值。 将所有其他nil值转换为null

    将所有其他nil值转换为null。 例子 var noNil = require ( 'no-nil' ) ; var input = [ 1 , undefined ] ; console . log ( noNil ( input ) ) ; // [1]; ##执照 The MIT License (MIT) Copyright (c) 2015 ...

    iOS中json解析出现的null,nil,NSNumber的解决办法

    在iOS开发过程中经常需要与服务器进行数据通讯,Json就是一种常用的高效简洁的数据格式,通过本文给大家介绍iOS中json解析出现的null,nil,NSNumber的解决办法,感兴趣的朋友参考下

    总结IOS中nil、Nil、NULL和NSNull区别

    相信有不少朋友想知道,在 Objective-C 中 nil 和 Nil 以及 NULL 的区别。最重要的是,在面试中还有不少朋友常会被问到。现在小编在这里统一详细说明。

    AlamoImage:使用Alamofire下载图片

    Alamo图片 用法 将import AlamoImage放在swift文件的顶部 ... responseImage () { (request, _ , image, error) in if error == nil && image != nil { self . imageView . image = image } } UI

    ios-清理模型中的nil.zip

    清理字典转模型后模型中的nil,属性多于字典,服务器返回为null等情况

    iOS中nil、Nil、NULL、NSNull详解

    主要介绍了iOS中nil、Nil、NULL、NSNull详解的相关资料,需要的朋友可以参考下

    IOS 开发之对象为空的判断(nil、null)详解

    IOS 开发之对象为空的判断(nil、null)详解 前言: 在开发中,会遇到很多空的情况,有时候取得对象(null),还有时候会得到<null>的情况,我们需要判断是否为空,进行return; id result; // 针对(null)这种...

    exec:使用超时和启动和停止扩展基本 osexec 命令的 Go 库

    执行 使用超时启动和停止增强 os/exec Cmd,对于长时间运行的进程很有用。去做使用示例@ 调查 ...= nil &&c.SysProcAttr.CreationFlags&syscall.CREATE_NEW_PROCESS_GROUP > 0}// Pkill kills the process with the

    Data Analytics Made Accessible Maheshwari, Anil epub version

    #3 in Data Mining (Kindle Store) #4 in Big Data Businesses #5 in Information Management (Kindle Store) This book fills the need for a concise and conversational book on the growing field of Data ...

    详解JavaScript中undefined与null的区别

    大多数计算机语言,有且仅有一个表示"无"的值,比如,C语言的NULL,Java语言的null,Python语言的none,Ruby语言的nil

    双击打开避免一闪而逝,命令行自动忽略

    废话不多说直接上代码,很多人在写程序时双击打开都会一闪而逝,因此都会在程序执行最后加上获取输入的代码。但是命令行时又不想再敲... err == nil && name != cmd.exe { defer fmt.Scanln() // 不是命令行时避免一

    javascript中undefined与null的区别

    大多数计算机语言,有且仅有一个表示”无”的值,比如,C语言的NULL,Java语言的null,Python语言的None,Ruby语言的nil。 有点奇怪的是,JavaScript语言居然有两个表示”无”的值:undefined和null。这是为什么? ...

    go-lib-config

    go-lib-config 用法 ENV阅读器 import ( "time" ...) func main () { var cfg Config service := libConfig...= nil { // some error handler } defer service . Stop () } 通过令牌的保管箱读取器 import ( "time

Global site tag (gtag.js) - Google Analytics