目前了解到,基本数据类型有:int,float,double,boolean,char等,基本数据类型不具备对象特性,比如无法像对象一样调用方法,且功能较为简单。因此为了让基本数据类型也拥有对象的特性,Java为每个基本数据类型提供了一个包装类,这样就可以像操作对象那样来操作基本数据类型。基本类型和包装类之间的对应关系:
那包装类的功能是什么呢?包装类主要提供了两大类方法:
1. 将本类型和其他基本类型进行转换的方法
2. 将字符串和本类型及包装类互相转换的方法
其中以由数字组成的字符串和数字之间的转换为例。
int number = 6;//定义int类型,值为6
Integer m = new Integer(5);//定义Integer类型,值为5
Integer n = new Integer("4");//定义Integer类型,值为字符4
Integer包装类的常用方法:
1.基本类型和包装类之间的转换
基本类型和包装类之间经常需要互相转换,以 Integer 为例(其他几个包装类的操作类似):
Integer a = new Integer(5); //定义Integer包装对象
int b = a + 4; //将对象和基本类型进行运算
在 JDK1.5 引入自动装箱和拆箱的机制后,包装类和基本类型之间的转换就更加轻松便利了。
那什么是装箱和拆箱呢?我们分别来看下
装箱:把基本类型转换成包装类,使其具有对象的性质,又可分为手动装箱和自动装箱
int temp = 10;
Integer a = new Integer(temp); //定义Integer包装对象,并手动装箱
Integer b = temp; //自动装箱
拆箱:和装箱相反,把包装类对象转换成基本类型的值,又可分为手动拆箱和自动拆箱
Integer temp = new Integer(10); //定义Integer包装对象
int a = temp.intValue(); //手动拆箱为int类型
int b = temp;//自动拆箱为int类型
2.Java 中基本类型和字符串之间的转换
另外还有一种常见的情况就是,将基本数据类型转换为字符串类型。那基本数据类型转换为字符串类型通常有以下三方法:
1. 使用包装类的 toString() 方法
2. 使用String类的 valueOf() 方法
3. 用一个空字符串加上基本类型,得到的就是基本类型数据对应的字符串
int c = 10;
String str1 = Integer.toString(c);//方法一
String str2 = String.valueOf(c); //方法二
String str3 = c + ""; //方法三
同样,将字符串转换为基本类型的方法有两种:
1. 调用包装类的 parseXxx 静态方法
2. 调用包装类的 valueOf() 方法转换为基本类型的包装类,会自动拆箱
String str4 = "8";
int mm = Integer.parseInt(str4);//方法一
int nn = Integer.valueOf(str4); //方法二