【Java基础】八种基本数据类型--原码反码补码
来源:互联网 发布:淘宝店铺联盟怎么弄 编辑:程序博客网 时间:2024/06/03 16:42
Java分多钟数据类型的区分,是为了节省资源。能用1个字节存储的,就不用2个字节存储。
Java的八中基本数据类型:
--Boolean
--数值类型
--整数
--byte(整型,以下四种都是)
--short
--int
--long
--char(字符型)
--浮点数
--float
--double
--特殊值3个:(POSITIVE_INFINITY、NEGATIVE_INFINITY、NaN)分别是无穷大、无穷小、非数。
数据类型的长度(字节):
数据类型booleantypeshortintlongcharfloatdouble长度(字节)1字节=8位11248248各数据类型变量的表现形式:
整型 有4种:十进制、二进制、八进制、十六进制
字符型有3种:单个字符、转义特殊字符、unicode值
浮点型有2种:十进制、科学计数法
类型转换两种方式:
强制:高位向低位。
自动:低位向高位。
整型的特殊总结:
所有数字在计算机底层都是以二进制形式存在。计算机以补码的形式保存所有的整数。提到补码,就要先了解一下原码、反码、补码的概念:
原码是直接将一个数值换算成二进制数。
反码是对原码按位取反,只是最高位(符号位)保持不变。
补码的计算规则:正数的补码和原码完全相同,负数的补码是其反码加1;
//定义一个32位二进制整数,最高位是符号位,1表示它是个负数,0表示它是正数。最高位是2的32次方的位,从右往左,第32位就是最高位。int bimVal3 = OB1(29个0)11;二进制整数转换成十进制数的过程:
二进制数为负数,先把补码-1得到反码,然后按位取反,符号位不变,得到原码。
二进制数为正数,其补码和原码完全相同。
先由二进制补码转成原码,之后,再由原码换算成相应的十进制数。
//定义一个32位二进制数,最高位是1,数值后添加了L后缀,因此整数占64位,第32位不是符号位,它的符号位是0。long binVal5 = OB1(29个0)11L;
//定义一个8位的二进制整数,它占32位,因此它是一个正数,强制类型转换成byte时产生了溢出,最终导致binVal4变成了-23byte binVal4 = (byte)Ob11101001;溢出怎么算?
会截断,溢出的位数会拿不到,剩下什么就是什么。
总结:
又搞清楚了一些概念,附上一张导图。
- 【Java基础】八种基本数据类型--原码反码补码
- Java基本数据类型与位运算、原码&补码&反码
- JAVA基础学习总结---原码、补码、反码以及基本数据类型
- java基础: 基本数据类型前最好了解 原码、反码、补码
- java基础(1) 原码反码补码 原码反码补码原码反码补码原码反码补码原码反码补码原码反码补码原码反码补码
- Java基础之 原码、反码、补码
- java基础四 原码,反码,补码
- Java 基础 原码、反码、补码
- 原码反码补码基础
- 原码反码补码基础
- [基础]原码反码补码
- java基本数据类型及计算机的原码,反码,补码,进制转换
- java 原码、反码、补码
- Java基础——原码, 反码, 补码 详解
- Java基础——原码, 反码, 补码 详解
- JAVA基础3(原码、反码和补码)
- java基础第一章_原码反码补码
- 计算机基础:原码、补码、反码
- STM32使用串口1配合DMA接收不定长数据,大大减轻CPU载荷。
- sql-索引的作用及其使用方法和经验
- echarts画一个折现/柱状混合图
- 如何利用Python和win32编程避免重复性体力劳动(四)——下拉列表操作:CB_SETCURSEL、CBN_SELENDOK和CBN_SELCHANGE
- 在eclipse中新建Dynamic web project时选择2.5和3.0的区别(里面涉及servlet和tomcat的问题)
- 【Java基础】八种基本数据类型--原码反码补码
- 面试题解答
- Oracle如何批量导出数据库表结构(建表语句)
- 使用百度API实现实时公交线路查询及地图显示
- 正则表达式基础
- 虚拟篇 01. Hyper-V 安装 ❀ Windows Server 2016
- 关于postgresql的注意事项
- 光环国际PMP:逗乐~项目经理感言
- 【莫队算法】uva 12345