java基本数据类型byte最⼤最⼩值
基本数据类型
数值型 byte 1字节 、short 2字节、 int 4个字节、 long 8个字节
布尔型 (⽆字节,在内存中以byte数组类型存储,1个字节,8位)
float 4个字节、 double 8 个字节
java中byte基本数据类型 1个字节
1B = 8b 所以⼀个byte占8位
在计算机中,数值只以的形式存在。
反码=原码
补码 = 反码+1
正数原码反码补码⼀致
所以 byte的最⼤值为 0111 1111 原码反码补码⼀致
值为 2^7 -1 = 127
最⼩值:
负数可取范围为 1000 0000 - 1111 1111
1111 1111(原码) = - 127
1000 0000(原码) = -0 (因为-0 没有意义,但是⼜不能没有它,所以,规定 1000 0000即(-0) 为 -2^7 = -128)
基本数据类型转换 byte short char int long float double
隐式转换 ⼩精度–>⼤精度
short s1 = 10;
int i1 = s1;
显式转换(强制转换) ⼤精度 – > ⼩精度 会出现精度丢失, 丢失原因: ⼩精度的数据类型没有能够容 纳⼤精度的位数,只能截取其⼤精度的最 后的位数。
int i2 = 10;
short s2 = (int) i2;
//基本数据类型转换
// 数值型
// 整形 byte short int long
// 浮点型 float double
// 字符型
// byte short char int long float double ⼩精度–>⼤精度
// 隐式转换 ⼩精度–>⼤精度
// 强制转换 ⼤精度 -->⼩精度
补码的最小负数short s1 = 1; // short --> int int i1 = s1; // int --> short short s2 = (short ) i1; // int --> float float f1 = 1; // float --> int; int i2 = (int ) f1; //精度丢失 ⼤精度-->⼩精度 丢失原因:⼩精度的位数少,只能截取⼤精度的最后的数量为⼩精度的位数的位数。 int i3 = 129; // 0000 1000 0001 补码: 1000 0001 反码:1000 0000 原码:0111 1111 byte b1 = (byte ) i3; System .out .println (b1);123456789101112131415161718
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论