java中int型的最大最小值以及其它数字类型的范围(包括数值类型合法转换)

java中int型的表示范围:
最小值: Integer.MIN_VALUE = -231= -21 4748 3648
最大值:Integer.MAX_VALUE=231-1=21 4748 3647(21亿左右)

另外,Java 八种基本类型 中表示整数的有:byte、short、int、long 这四种。 (另外四种是 float、double、char、boolean)

java中int型的最大最小值以及其它数字类型的范围(包括数值类型合法转换)_第1张图片int型是4字节,有32位二进制,但是因为计算机多用补码进行表示和运算,最高位是用来表示“+”和“-”的,所以是231次方。

同理,short的最大最小值表示:
最小值:Short.MIN_VALUE=-215=-32768;
最大值:Short.MAX_VALUE=215 - 1=32767;

其它型以此类推~

byte(1字节8位)类型范围是:-128到127;
long(8字节64位)类型范围是:-922 3372 0368 5477 5808 到 922 3372 0368 5477 5807

浮点类型
float(4字节)类型范围:大约±3.402 823 47×1038(6~7位有小数字);
double(8字节)类型范围:大约±1.797 693 134 862 315 70×10308(15位有效数字)

double类型的数值精度是float类型的两倍。

数值类型之间的合法转换
java中int型的最大最小值以及其它数字类型的范围(包括数值类型合法转换)_第2张图片
实线箭头表示这两种数值类型无信息丢失,虚线表示可能会有精度损失。比如int范围大概是10位数字,但是float精度为6~7位有效数字,这之间转换就会损失数字精度。

例:

int n=123456789;
float f=n;//f为1.23456792E8

你可能感兴趣的:(Java,java)