1.12

数据类型
Scala 也是一门强类型语言,它里面的数据类型绝大多数与 Java 一样。

基础类型 类型说明
Byte 8 位带符号整数
Short 16 位带符号整数
Int 32 位带符号整数
Long 64 位带符号整数
Char 16 位无符号 Unicode 字符
String Char 类型的序列,字符串
Float 32 位单精度浮点数
Double 64 位单精度浮点数
Boolean true 或 false
Scala 和 Java 类型的区别:

所有类型都以大写字母开头
整形使用 Int 而不是 Integer
定义变量可以不写类型,让编译器自动推断
默认整形是 Int,默认浮点型是 Double
Scala 的类型关系图:

Any 是所有类型的父类,相当于 Java 中的 Object 类。

AnyVal 是所有数值类型的父类,AnyRef 是所有引用类型的父类。

Unit 类似于 Java 中的 void,一般作为返回值。

Null 是所有引用类型的子类,只有一个实例 null。

Nothing 是所有数据类型的子类,不能创建该类型实例,一般结合异常使用。

 

类型转换
当 Scala 程序在进行运算或赋值时,范围小的数据类型会自动转换为范围大的数据类型值,然后再进行计算。

类型转换分为值类型转换和引用类型转换,值类型转换又分为自动类型转换和强制类型转换。

自动类型转换

范围小的数据类型值会自动转换为范围大的数据类型值,自动类型转换从小到大依次为:

1
强制类型转换

将范围大的数据类型值通过一定格式转换为范围小的数据类型值(可能会造成精度缺失)。

格式:

1
例如:

1
2
3
4
5
值类型和 String 类型的相互转换

值类型转 String 格式:

1
2
String 类型转值类型格式:

 

posted @ 2025-02-07 13:42  七安。  阅读(21)  评论(0)    收藏  举报