Java 基本数据类型:byte,int,short,long,float,double,char。
1. byte,int,short,long,float,double,char占几个字节?能表示的最大最小值是多少?
byte占1个字节8位,取值范围为-2^7~2^7-1。
short占2个字节16位,取值范围为-2^15~2^15-1。
int占4个字节32位,取值范围为-2^31~2^31-1。
long占8个字节64位,取值范围为-2^63~2^63-1。
float占4个字节32位,取值范围为3.402823e+38 ~ 1.401298e-45。
double占8个字节64位,取值范围为1.797693e+308~ 4.9000000e-324。
char占2个字节16位,取值范围为0~65535。
boolean即true或false。
2. int 范围?float 范围?
int比float精度小。float比int的范围大。
1. int是用于定义整数类型百变量的标识符。占用4字节,32比特,数据范围为-2147483648~2147483647[-2^31~2^31-1]。
2. FLOAT数据类型用于存储单精度浮点数或双精度浮点数。浮点类型的单精度值具有4个字节,包括一个符号位、一个8位二进制指数和一个23位尾数。此表示形式为float类型提供了一个大约在-3.4E+38~3.4E+38之间的范围。
注:int32 在内存中的分配是:1bit(符号位)31bits(实际数字位)
float 在内存中的分配情况是:1bit(符号位) 8bits(指数位) 23bits(尾数位)
int32 的实际数字位决定了int32的范围;
float的指数位决定了float的范围,因为有指数位,所以范围会比int类型大很多很多。float的尾数位决定了float的精度。
float在内存中是按ieee754标准存储的。
注:资料都是网上搜索整理,如有雷同,望见谅。