2024年java 基础数据类型取值范围

java 基础数据类型取值范围大前提 目前来说所有数据在内存当中都是以补码的形式存在 基础知识学习 1 关于 byte 类型取值范围分析 在 java 当中 byte 类型只占一个字节 一个字节等于 8 位 其中最高位表示符号位 0 代表正数 1 代表负数 因此正数最大可以表示的正数为 0111 1111 2 转化为 10 进制为 127 正数最小可以表示 0000 0000 2 也就是 0 因为最高为代表符号位因此就出现了 0000 0java

大家好,我是讯享网,很高兴认识大家。



大前提:目前来说所有数据在内存当中都是以补码的形式存在。

基础知识学习:

1.关于byte类型取值范围分析

在java当中byte类型只占一个字节,一个字节等于8位,其中最高位表示符号位0代表正数,1代表负数,

因此正数最大可以表示的正数为0111 1111(2)转化为10进制为127。正数最小可以表示0000 0000(2)

也就是0。

因为最高为代表符号位因此就出现了0000 0java 基础数据类型取值范围000(2)和1000 0000(2)也就是+0和-0,我们默认0

就是代表+0,没有-0这一说法,因此多出了1000 0000(2),1111 1111代表-127,1000 0000代表

-1,也就是从-1到-127都有数表示了,因此我们规定1000 0000(2)代表-128。

由上面分析我们可以确认byte的取值范围为[-128,127]。

2.关于int类型的取值范围分析

在java当中int类型占用4个字节,一个字节等于8位,所以总共32位,正数从0开始,负数从-1开始,

因此取值范围为:[-2^31, 2^31 - 1];

3.进入正题,int转换为byte类型过程

例子1:int类型1转换为byte类型

讯享网

例子2:int类型128转换为byte类型

 

例子3:int类型129转换为byte类型

讯享网

例子4:int类型-128转换为byte类型

 

例子5:int类型-129转换为byte类型

 

4.关于n进制的数左移

一个n进制的数N左移m位后得到的数为:N * n^m

例如

十进制的4左移1位,4 * 10^1 = 40

二进制的4左移3位,也就是等于4 * 2^3 = 32

100<<3 变为 转为2进制为32

5.关于n进制的数右移

一个n进制的数N右移m位后得到的数为:N / (n^m)

例如

十进制的4右移1为,4/10 = 0

二进制的16右移3位,也就是等于16/(2^3) = 2

10000>>3 变为 10转为2进制为2

小讯
上一篇 2025-01-01 17:12
下一篇 2024-12-24 15:06

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/9598.html