Java
中的数据类型分为:基本数据类型
和引用数据类型
基本数据类型
Java
中的基本数据类型一共有八
种, 主要分为三
大类: 数字型(整型和浮点型)
、字符型
、布尔型
注意:
1、整型和整型运算的结果为int
2、一般的整型变量的默认类型为int
3、浮点数的默认类型位双精度浮点数(double
)
4、浮点数不能用于表示精度的值,比如货币,原因:因为计算机中保存的小数是十进制小数的近似值,并不是准确值。
5、金额等重要指标的数据推荐使用 BigDecimal
6、在整型中,每个类型都有一定的取值范围,但是在程序中有些计算会导致超出变量类型的取值范围,即溢出,如以下代码:
int i = Integer.MAX_VALUE;
int j = Integer.MAX_VALUE;
int k = i + j;
System.out.println("i (" + i + ") + j (" + j + ") = k (" + k + ")");
输出结果:i (2147483647) + j (2147483647) = k (-2)
整型
- byte: 8位(1字节),默认值为
0
,取值范围:-128
~127
- short: 16位(2字节),默认值为
0
- int: 32位(4字节),默认值为
0
- long: 64位(8字节),默认值为
0L
浮点型
- float: 单精度32位(4字节)浮点数,默认值
0.0f
- double: 双精度64位(8字节)浮点数,默认值
0.0d
字符型
- char: 单一的16位(4字节)的Unicode字符,可以存储任何字符,取值范围:
\u0000(0)
~\uffff(65535)
布尔型
- boolean: 用于表示一位的信息,默认值位
false
,取值范围:true
和false
public class PrimitiveType {
public static void main(String[] args) {
/*
* byte
* short、int、long、float、double的位数及最大值最小值类似,
* 其包装类分别为Short、Integer、Long、Float、Double
*/
System.out.println("基本类型: byte 位数: " + Byte.SIZE);
System.out.println("包装类: java.lang.Byte");
System.out.println("最小值: Byte.MIN_VALUE = " + Byte.MIN_VALUE);
System.out.println("最大值: Byte.MAX_VALUE = " + Byte.MAX_VALUE);
System.out.println();
// char
System.out.println("基本类型: char 位数: " + Character.SIZE);
System.out.println("包装类: java.lang.Character");
// 默认为字符型,将字符值强制转换为数字型输出
System.out.println("最小值: Character.MIN_VALUE = " + (int) Character.MIN_VALUE);
System.out.println("最大值: Character.MAX_VALUE = " + (int) Character.MAX_VALUE);
System.out.println();
// boolean
System.out.println("基本类型: boolean ");
System.out.println("包装类: java.lang.Boolean");
System.out.println("false: Boolean.FALSE = " + Boolean.FALSE);
System.out.println("true: Boolean.TRUE = " + Boolean.TRUE);
System.out.println();
}
}
运行结果
基本类型: byte 位数: 8
包装类: java.lang.Byte
最小值: Byte.MIN_VALUE = -128
最大值: Byte.MAX_VALUE = 127
基本类型: char 位数: 16
包装类: java.lang.Character
最小值: Character.MIN_VALUE = 0
最大值: Character.MAX_VALUE = 65535
基本类型: boolean
包装类: java.lang.Boolean
false: Boolean.FALSE = false
true: Boolean.TRUE = true