int和long类型取值范围。 基本数据类型 byte , short , char ,int , long , float ,double,boolean类型取值范围

int和long类型取值范围。

1. int类型 ---------4字节(32位)

​ ------------------------------------------------------------------------------- 范围

①(无符号整型) -------------- unsigned int ***************************** 0 ~ 4294967295(2^32-1)

②(有符号整型)(一般省略signed) int ********** -2147483648(-2^31) ~ 2147483647 (2^31-1)

有符号,最高位是一个符号位,1代表负数,0代表正数,所以是31位,再减1,是因为正数还有个0。

2. long类型 ---------8字节(64位)

范围: long -9223372036854775808(-2^63) ~ 9223372036854775807(2^63-1)

【例1】

Long    long1 = 2147483648;   
  • 错误
  • 默认是int类型,2147483648为int类型,但是报错了,类型不匹配,而且超出int类型范围
Long    long2 = (long)2147483648;
  • 正确 , 2147483648本来就是int类型,强制类型转换成了long类型
  • 因为long的范围大,可以装下

【例2】

Long    long1 = 2147483648L;   
  • 正确
  • 在后面加L, 说明定义时就是long类型了,,没有写,就是默认int类型

3. 还有其他的一些范围(8中基本数据类型),只要记住类型的 字节数(乘以8 = 位数),就可以自己计算范围了。

在低字节转高字节时自动转换类型:byte < short < char = int < long , float < double

数据类型字节数二进制位数范围规律
整 型byte18-128 ~ 127-2^7 ~ 2^7-1
整 型short216-32768 ~ 32767-2^15 ~ 2^15-1
整 型int432-2147483648~ 2147483647-2^31 ~ 2^31-1
整 型long864-9223372036854775808 ~ 9223372036854775807-2^63 ~ 2^63-1
浮点型float432-3.4E-38 ~ 3.4E+38科学计数法: -3.4E-38表示-3.4×10^(-38)
浮点型double864-1.7*10(-308)~1.7*10(308)
字符型char2160~655350~2^16-1
布尔型boolean18true或falsetrue或false (java中没有0和1)

注: long型后如果不加L则默认为int型,浮点型如果不加F则默认为double型

4. 浮点型

类型指数长度尾数长度
float8 位23 位
double11 位52 位

float类型为例:
在这里插入图片描述
从高位到低位排列

符号位:占一位,1表示负数,0表示正数

指数位:8位,二进制转换位转换成十进制后再减去127,即为指数。

尾数位:23位

同理,double 占8个字节,存储方式:1位符号位 + 11位指数位 + 52位尾数位

  • 18
    点赞
  • 81
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

樂小伍

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值