Java语言提供了8种基本数据类型
- 基本数据类型:一般都是小写字母开头定义的
- 对象类型:一般都是大写字母开头定义的
一、基本数据类型
- 4个 整数型:byte、short、int、long
- 2个浮点型:float、double
- 1个字符类型:char
- 1个布尔型:boolean
1. 整数型
主要区别是长度不一样,我们一般使用的时候,也有侧重的
类型 | 默认值 | 大小字节 | 取值范围 | 示例 | 使用场景 | 对应对象类型 |
---|---|---|---|---|---|---|
byte | 0 | 1 | -2^7—2^7-1 | byte b = 10; | 二进制字节流 | Byte |
short | 0 | 2 | -2^15—2^15-1 | short b = 10; | 短整型,少用 | Short |
int | 0 | 4 | -2^31—2^31-1 | int i = 100; | 数字,id,很常用 | Integer |
long | 0 | 8 | -2^63—2^63-1 | long i = 100l; | 大数字,id,很常用 | Long |
基本数据类型,就是一个数值
对象类型,就不一样,人家可有内存,方法,属性等
1. 整数型类型与对应对象类型转换
//1.基本类型
int i = 100;
long li = 100l;
//2.对象类型
Integer id1 = 100;
Integer id2 = Ineger.value(100);
Long lid1 = 100L;
Long lid2 = Long.value(100);
//3.对象类型-->基本类型
int ii = id1.intValue();
long lili = lid1.longValue();
既然是对象,使用方法的还是,需要注意非空非null才可以调用方法
//1.定义类型对象
Integer id3;
//2.转型的时候,会发生空指针异常
int i3 = id3.intValue();
2. 浮点型
主要区别是长度不一样,我们一般使用的时候,也有侧重的
对于float与double,当数值是有小数的时候,就会使用,但是需要注意的是:浮点型在运算的时候,容易产生各种各样的误差,所以使用的时候,需要特别注意。
我的个人使用经验:
平时开发系统肯定免不了:价格,分数,百分比等数字,为了尽量避免误差,可以考虑存放数据库的时候,全部根据业务需要,乘以一定的倍数,进行保存,例如:
金额的,*100保存于数据库中
3. 字符型
呵呵,就是简单一个字符,没有什么好讲的
4.布尔型
就是简单的一个对与错,也没有什么好讲的
二、注意事项与容易出错的点
1.==的值比较
基本数据类型,==比较的,都是对值的大小进行比较
int a = 100;//基本数据类型
Integer b = new Intger(100);//对象类型
Integer c = 100;//对象类型
System.out.println(a==b);//true,a是基本数据类型,只是比较值大小
System.out.println(a==c);//true,c是基本数据类型,只是比较值大小
System.out.println(b==200);//true,200是基本数据类型,只是比较值大小
System.out.println(b==c);//false,对象之间的比较,根据内存地址比较
2. 默认值
基本数据类型,都是具有默认值的,对象类型默认值,都是null