Java基本数据类型

一、整数型
Java中整型数据属于有符号数,即第一个bit位为0表示正整数,第一个bit位为1表示负整数。在计算机中负数由补码表示,那么补码如何计算呢?
补码=源码取反 + 1;
如:
22,在计算机中的表示为00010110,
-22,取反:11101001,加1:11101010
二、浮点型
Java中浮点型数据无法由二进制直接表示,而是一种对于实数的近似数据表示法,它遵循[IEEE 754](https://baike.baidu.com/item/IEEE 754/3869922)标准,因此无法表示金额,表示金额建议使用BigDecimal
三、字符型
取值范围0~65536,因为char类型在ASCII字符编码中,有对应的数值,可直接做运算,输出字符表中对应的字符
char 类型支持数学运算,背后的原理就是char 可以转化成对应的数字,然后数字计算之后,又可以对应到字符表中的字符,所以运算结果就是新的字符。
运算的结果是int 类型,只不过这个int 类型要想赋值给char ,还有一个范围的要求0~65536
字符串拼接的时候使用+ 所以当你想拼接两个字符的时候,不能直接使用+ 拼接,因为那是加法运算对于char 类型,所以你基本上可以把char 类型看成数值类型
四、布尔型
boolean 到底占几个字节
在Java中定义的八种基本数据类型中,除了其它七种类型都有明确的内存占用字节数外,就boolean类型没有给出具体的占用字节数,因为对虚拟机来说根本就不存在 boolean 这个类型,boolean类型在编译后会使用其他数据类型来表示。
boolean类型被编译为int类型,等于是说JVM里占用字节和int完全一样,int是4个字节,于是boolean也是4字节- boolean
数组在Oracle的JVM中,编码为byte数组,每个boolean元素占用8位=1字节
*原文链接:https://blog.csdn.net/king14bhhb/article/details/110631164

浙公网安备 33010602011771号