1、基本数据类型
- Byte 8位有符号补码整数。数值区间为 -128 到 127
- Short 16位有符号补码整数。数值区间为 -32768 到 32767
- Int 32位有符号补码整数。数值区间为 -2147483648 到 2147483647
- Long 64位有符号补码整数。数值区间为 -9223372036854775808 到 9223372036854775807
- Float 32位IEEE754单精度浮点数
- Double 64位IEEE754单精度浮点数
- Char 16位无符号Unicode字符, 区间值为 U+0000 到 U+FFFF
- String 字符序列
- Boolean true或false
- Unit 表示无值,和其他语言中void等同。用作不返回任何结果的方法的结果类型。Unit只有一个实例值,写成()。
- Null null 或空引用
- Nothing Nothing类型在Scala的类层级的最低端;它是任何其他类型的子类型。
- Any Any是所有其他类的超类
- AnyRef AnyRef类是Scala里所有引用类(reference class)的基类
scala的基本数据类型和一般的编程语言一样是用来表示现实世界的数据在计算机中的表示形式的,他的独特之处在于Scala的基本类型都是类,也就是说都有自己的方法和属性(在c语言和Java语言中,基本数据类型是没有方法和属性的),例如:
100.toString() //在其他的语言当中数字100是不能调用方法的,但是在Scala中可以
2、变量
Scala中有两种变量,其定义方式如下:
方法一:
scala> val x=10
x: Int = 10
或者
scala> val x:Int=10
x: Int = 10
这种定义方法是是以”val”开头,定义一个不可变变量的,也就是所谓的常量。如果对其重新复制会产生报错,例如:
scala> x=11
error: reassignment to val
x=11
方法二:
scala> var x=10
x: Int = 10
或者
scala> var x:Int=10
x: Int = 10
这种定义方法是是以”var”开头,这种定义方法定义出的变量和一般语言的变量没什么不同,不一样的是变量的在定义的时候必须赋值。
注意:一般的编程语言书里都会出现一种以【】包裹的格式,代表【】中的内容可选可不选,例如:
val x[:Int]=10 //这里意味着可以是val x=10或者val x:Int=10