Java 的两大数据类型:
内置数据类型
引用数据类型
- byte:
最小值是 -128(-2^7);
最大值是 127(2^7-1); - short:
最小值是 -32768(-2^15);
最大值是 32767(2^15 - 1); - int:
最小值是 -2,147,483,648(-2^31);
最大值是 2,147,483,647(2^31 - 1); - long:
最小值是 -9,223,372,036,854,775,808(-2^63);
最大值是 9,223,372,036,854,775,807(2^63 -1); - float:
float 数据类型是单精度、32位、符合IEEE 754标准的浮点数 - double:
double数据类型是双精度、64 位、符合IEEE 754标准的浮点数;
浮点数的默认类型为double类型; - boolean
- char:
char类型是一个单一的 16 位 Unicode 字符;
最小值是 \u0000(即为0);
最大值是 \uffff(即为65,535);
数值类型的基本类型的取值范围,都已经以常量的形式定义在对应的包装类中
注意各个基本类型的的默认值,其中char的默认值为字符空,对象的默认值为空对象
实际上,JAVA中还存在另外一种基本类型 void,它也有对应的包装类 java.lang.Void,不过我们无法直接对它们进行操作。
- 对象、数组都是引用数据类型。
- 所有引用类型的默认值都是null。
- 一个引用变量可以用来引用任何与之兼容的类型。
- 例子:Site site = new Site(“Runoob”)。
byte、int、long、和short等都可以用十进制、16进制以及8进制的方式来表示,但输出显示时为10进制。
当使用常量的时候,前缀 0 表示 8 进制,而前缀 0x 代表 16 进制
Java语言支持一些特殊的转义字符序列。
符号 | 字符含义 |
---|---|
\n | 换行 (0x0a) |
\r | 回车 (0x0d) |
\f | 换页符(0x0c) |
\b | 退格 (0x08) |
\0 | 空字符 (0x0) |
\s | 空格 (0x20) |
\t | 制表符 |
" | 双引号 |
’ | 单引号 |
\ | 反斜杠 |
\ddd | 八进制字符 (ddd) |
\uxxxx | 16进制Unicode字符 (xxxx) |
低 ------------------------------------> 高
byte,short,char—> int —> long—> float —> double
数据类型转换必须满足如下规则:
-
不能对boolean类型进行类型转换。
-
不能把对象类型转换成不相关类的对象。
-
在把容量大的类型转换为容量小的类型时必须使用强制类型转换。
-
转换过程中可能导致溢出或损失精度,例如: