Java的八大基本数据类型:
byte,short,char,int,float,double,long,boolean
按类型划分
- 整型:byte, short, int, long
- 浮点型:float, double
- 字符型:char
- 布尔型:boolean
所占字节以及取值范围
注:1字节=8位(bit)
1、byte。占1个字节(即8bit),取值范围为-128 ~ 127(即 2^7 ~ 2^7-1 / 10000000~01111111,首位为符号位),默认值为0。
2、short。占2个字节(即16bit),取值范围为-32768 ~ 32767(即 -2^15 ~ 2^15-1),默认值为0。
3、int。占4个字节(即32bit),取值范围为-2,147,483,648 ~ 2,147,483,647(即 -2^31 ~ 2^31-1),默认值为0。
4、long。占8个字节(即64bit),取值范围为-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807(即 -2^63 ~ 2^63-1),默认值为0L。
5、float。占4个字节(即32bit),包含三部分:符号位、指数位、尾数位。默认值为0.0f。
. | 符号位 | 指数位 | 尾数位 |
---|---|---|---|
字节数 | 1 bit | 8 bit | 23 bit |
6、double。占8个字节(即64bit),包含三部分:符号位、指数位、尾数位。默认值为0.0d。
. | 符号位 | 指数位 | 尾数位 |
---|---|---|---|
字节数 | 1 bit | 11 bit | 52 bit |
例:一个二进制数:1.001101011*2^5
符号位:用来存储符号,正数为“0”,负数为“1”。该例子是一个正数为“0”
指数位:用来保存例子中的5
尾数位:用来保存例子中的001101011
(注:指数位决定了数的大小,尾数位决定了数的精度)
7、char。占2个字节(即16bit),可以存储任何类型的字符,无默认值。例: char a = ‘a’;
8、boolean。取值为true/false。默认值为false。
对应的包装类
基本类型 | 包装类 |
---|---|
byte | java.lang.Byte |
short | java.lang.Short |
int | java.lang.Integer |
long | java.lang.Long |
float | java.lang.Float |
double | java.lang.Double |
char | java.lang.Character |
boolean | java.lang.Boolean |
装箱和拆箱:
由基本类型包装成对应的包装类型称为“装箱”。反之,由包装类型转成对应的基本类型称为“拆箱”
原文地址
原文在我的个人博客:Java基础(一)——八大基本数据类型