Java学习day2——包装类

Java学习day2——包装类,第1张

写在前面

        Java使用基本类型以及对象来表示数据,但是在某种情况下,我们必须使用对象来表示我们所需要使用的数据,正如上一篇HashMap简介一样,我们需要将基本类型int,转换乘包装类Integer,这样才能将数据存储进HashMap。

包装(wrapper)类表示一种特殊的基本类型。例如:Integer类表示一个整型量。由Integer类创建的对象只保存一个int型的值。

包装类的构造方法
Integer obj = new Integer(40);

如上所示,obj对象就将40这个整型当作一个对象而非普通的基本类型。它可以被用于需要对象的地方,如:HashMap。

基本数据类型包装类
byte

Byte

shortShort
intInteger
longLong
floatFloat
doubleDouble
charCharacter
booleanBoolean
voidVoid

可以看出,一般包装类与基本数据类型相差不大,首字母须大写,唯有Integer与Character需要特别记一下。

注意到:对应于void类型的包装类时Void。但和其它包装类不一样的是,Void类型不能被实例化,它只表示void引用的概念。

方法

包装类中还提供几个方法,下面以Integer类距离,其它包装类由相似的用法:

Integer(int value)  //构造方法,创建新的Integer对象,用来保存value的值
static int parseInt(String str)  //按int类型返回存储在制定字符串str中的值
static String toBinaryString(int num)
static String toHexString(int num)
static String toOctalString(int num)
//将制定的整型值在对应的进制下按字符串形式返回

Java包装类中常常含有常量,这非常有用。如:Integer类由两个常量MIN_VALUE、MAX_VALUE

自动装箱

Java会自动将基本数据类型转换乘对应的包装类(如果你将基本数据类型的值赋给包装类对象的话):

Integer obj;
int num = 40;
obj = num;   //自动创建Integer对象

这样,obj就创建了一个40的对象。

同样地,有自动装箱也有拆箱功能,也可以自动完成:

Integer obj = new Integer(40);
int num;
num = obj;    //自动解析出int类型

这样,就完成了包装类与基本数据类型之间的无缝转换。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/795224.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-06
下一篇 2022-05-06

发表评论

登录后才能评论

评论列表(0条)

保存