Scala中的数据类型
Any是abstract类,它是Scala类继承结构中最底层的。所有运行环境中的Scala类都是直接或间接继承自Any这个类。 AnyRef是所有引用类型的基类。
AnyVal 所有值类型的基类。
Nothing是所有类的子类,是一个类。
Nothing没有对象,但是可以用来定义类型。
null是Null的唯一对象
变量的定义
val是常量 var是变量
val定义的变量是不可变的
var是可变的
变量的名字在前面 数据类型在后面
基本操作符
与或非:&|!
Scala只能用+、-
字符串的插值操作
Scala中的三个字符串插值器:s、f、raw
s 在任何字符串前加上s,就可以直接在串中使用变量了
f 除了 s 的功能外(不指定格式就和 s 一样),还能进行格式化输出,在变量后用 % 指定输出格式
raw 除了对字面值中的字符不做编码外raw 插值器与 s 插值器在功能上相同的
条件表达式
if else 单分支
if
else if
else 多分支
scala中有个Unit类,写做(),相当于Java中的void
当一个值类型既可能为Int又可能为String时,它的类型被定义为Any,是Int和String的父类。
没有else时,会默认为else (), y的类型被定义为AnyVal