1.包装类的介绍
java是面向对象计算机语言但是不是完全的面向对象,8种基本数据类型不是面向对象的,但是java给我们创建了8种类来对这几种基本数据类型来创建对象,这8种类统称为包装类。具体如下:
其中除Boolean和char类之外的6种类又构成了父类Number的一部分。
2.为何要使用包装类
包装类可以用对象可以极大的丰富对基本类型数据的操作,最常见的就是进制的转换和字符串转换为基本数据类型。但是因为使用包装类要创建对象,在堆内存中开辟空间,而基本数据类型只停留栈内存中,所以运行效率和占用资源比基本类型数据多,所以对于没必要创建包装类的不必创建包装类。
3.自动装拆箱
在jdk5.0以后引入了自动装拆箱方便了书写,具体如下:
1 package wrapper; 2 3 public class New 4 { 5 public static void main(String[] args) 6 { 7 Double d1=new Double(3.14);//标准形式。 8 Double d2=3.14;//自动装箱,编译时编译器自动修改为上面的那种形式然后创建。 9 double d3=d1.doubleValue();//标准形式。 10 double d4=d1;//自动拆箱。 11 } 12 }
4.常见的包装类方法
1 package wrapper; 2 3 public class First 4 { 5 public static void main(String[] args) 6 { 7 String a="1234"; 8 int b=Integer.parseInt(a);//将字符串转换为基本数据类型 9 System.out.println(b+10); 10 int c=0723; 11 String d=""+c; 12 System.out.println(Integer.parseInt(d, 10));//进制转换,返回为基本数据类型,前面的参数为转换前的数(可以为字符),后面的参数为转换为什么进制。 13 Integer w=Integer.valueOf(c);//将基本数据类型转换为包装类 14 int m=w.intValue(); 15 System.out.println(m); 16 String s=Integer.toBinaryString(c);//进制转换,返回为字符串。这个为转换为2进制,toOctalString为8进制,toHexString为16进制。 17 System.out.println(s); 18 System.out.println(Integer.compare(b, c));//可以直接比较基本数据类型,相等返回0,大返回1.小返回-1。 19 Double y=new Double(3.14); 20 Double x=new Double(2.14); 21 System.out.println(x.compareTo(y));//也可以比较包装类对象 22 } 23 }
时间: 2024-10-07 16:15:59