1.基本数据类型
Java基本类型共有八种,基本类型可以分为三类,字符类型char,布尔类型boolean以及数值类型byte、short、int、long、float、double。数值类型又可以分为整数类型byte、short、int、long和浮点数类型float、double。JAVA中的数值类型不存在无符号的,它们的取值范围是固定的,不会随着机器硬件环境或者操作系统的改变而改变。实际上,JAVA中还存在另外一种基本类型void,它也有对应的包装类 java.lang.Void,不过我们无法直接对它们进行操作。
1.1 八种数据类型
1.2 基本数据类型的字节数及表示范围
2.包装类型:
Java 是面向对象的语言,但是为了便于开发者的使用,Java 中却沿用了 C 语言的基本数据类型,在进行基本的数据计算时,开发者可以直接使用基础类。但是基本数据类型是不具备对象的特征的,不能调用方法,而且基本数据类型不能存入集合中,所以就需要将基础数据类型实例封装为 Java 对象,使其具有了对象的属性和方法。
2.1、 基本类型与包装类的区别
存储位置不同:
基本数据类型直接将值放在栈中;
包装类型是把对象放在堆中,然后通过对象的引用来调用他们 ;
初始值不同:
int的初始值为 0
boolean的初始值为false ;
包装类型的初始值为null ;
使用方式不同:
基本数据类型直接赋值使用就好;
在集合如 coolectionMap 中只能使用包装类型;
2.2 、基本类型与包装类的相互转换
手动转换
基本数据类型 → 包装类:
通过对应包装类的构造方法实现,除了Character外,其他包装类都可以传入一个字符串参数构建包装类对象。
包装类 → 基本数据类型:
通过包装类的实例方法 xxxValue() 实现; // xxx表示包装类对应的基本数据类型
自动装箱&自动拆箱(jdk1.5以后)
基本类型添加到集合中时,进行自动装箱。
包装类型在涉及到运算的时候,“加,减,乘, 除” 以及 “比较equals,compareTo”,进行自动拆箱。
3、简单数据类型转换
容量排序
4.扩展
4.1浮点数
float表示的字长是有限的,离散的,存在舍入误差,数值接近但不等于真值。
注:最好完全使用浮点数进行比较。
金融计算不能用float或double,要使用BigDecimal。
4.2字符
4.2.1、所有的字符本质还是数字
4.2.2、编码 Unicode 占两个字符。