数据类型:一组特殊文字给变量申请存储空间大小与存储规则的工具。
Java中的数据类型分为:1.基本数据类型
byte->short/char->int->long->float->double (按精度排序) boolean
字节:1 2 4 8 4 8 1
2.引用数据类型
因为引用类型存的是地址值 所以引用类型都为8字节
默认值是null
在Java中只有值传递,没有引用传递
数据的保存:在计算机中不管怎样的数据最终都会用大量的“0”和“1”表示,我们称之为二进制
每8个二进制为一组,称为字节 其中第一位用来表示正负
byte是计算机中存放数据的基本单位
数据类型转换时导致数据的变化称为精度流失。自动数据类型转换也会发生精度流失
例如:long-->float/double
浮点型采用指数方法表示方法,对应十进制小数存在数值表示盲区,使用近似数来表示(所以long转小数会精度丢失)
但是a+b=c的算式使用浮点型可能无法得到想要的结果,因为a的近似值和b的近似值运算得到的值更近似于d
比如double类型的0.1+0.2不等于0.3的现象
会大数吃小数,12345678+0.00000001=12345678
需要高精度运算的数字不允许使用浮点型计算,可以使用
BigInteger bi;//高精度整数类
BigDecimal bm;//高精度小数类
在做运算时JVM虚拟机读取数据类型时会将byte、short、char当作int类型