java零碎知识(每种数据类型默认值,多大,取值范围)

时间:2021-09-21 17:14:58

只要记下字节就好了

其它不必死记,取值范围:没有正负的,2的
字节数*8次方-1  , 凡是有正负的2的 (字节数*8)-1次方 -1

比如:

1.byte(有正负):先计算是2的几次方:字节数1*(8-1)=7  (一个字节8比特,8由此而来,而正负占一位所以-1)

那么为-2^7 ---- 2^7-1

2.char(没有正负)先计算是2的几次方:字节数2*(8)=16

那么为0 ---- 2^16-1

java零碎知识(每种数据类型默认值,多大,取值范围)

一道与之相关的题

java零碎知识(每种数据类型默认值,多大,取值范围)

解析:

short a=0000000010000000,当进行强制转换时,byte是八位的,截取a的后八位,b=10000000;最高位是符号位,说明b是负数,在计算机中以补码表示。求其源码:先减1得到反码01111111,取反得到源码1000000,也就是-128.


以上这题属于计算机组成原理的知识,没有学习过,可以参考文章:原码、反码、补码和移码其实很简单