java基础类型与包装类型的区别

一、Java基本类型

Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。
1、整数:包括int,short,byte,long ,初始值为0
2、浮点型:float,double ,初始值为0.0
3、字符:char ,初始值为空格,即'' ",如果输出,在Console上是看不到效果的。
4、布尔:boolean ,初始值为false

二、包装类

包装类把基本类型转换为对象,每个基本类型在java.lang包中都有一个相应的包装类

包装类型: Integer 、Long、Short、Byte、Character、Double、Float、Boolean、BigInteger、BigDecmail

其中BigInteger、BigDecimal没有相对应的基本类型,主要应用于高精度的运算,BigInteger 支持任意精度的整数,BigDecimal支持任意精度带小数点的运算,主要用于金钱的计算上。

三、包装类型的作用

3.1提供以下列使用的方法

3.2集合不允许存放基本数据类型数据,存放数字时,要用包装类型


四、基本类型和包装类的异同

4.1 在Java中,一切皆对象,但八大基本类型却不是对象。

4.2声明方式的不同,基本类型无需通过new关键字来创建,而封装类型需new关键字。

4.3存储方式及位置的不同,基本类型是直接存储变量的值保存在堆栈中能高效的存取,

封装类型需要通过引用指向实例,具体的实例保存在堆中。

4.4初始值的不同,封装类型的初始值为null,基本类型的的初始值视具体的类型而定,

比如int类型的初始值为0,boolean类型为false;


4.5使用方式的不同:如与集合类合作使用时只能使用包装类型。


不能用于两个Integer对象双等判断两个对象的值相等,会出现错误的.原因见

java中Integer,String判断相等与integer的比较大小:https://www.cnblogs.com/rocky-AGE-24/p/5947667.html

————————————————
版权声明:本文为CSDN博主「zEthan」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/ethan_10/article/details/80312726

原文地址:https://www.cnblogs.com/hanzeng1993/p/15070218.html