Java并不是纯面向对象的语言。Java语言是一个面向对象的语言,但是Java中的基本数据类型却不是面向对象的。但是我们在实际使用中经常需要将基本数据转化成对象,便于操作。比如:集合的操作中。例如使用Map对象要操作put()方法时,需要传入的参数是对象而不是基本数据类型。为了解决这个不足,在设计类时为每个基本数据类型设计了一个对象的类进行代表,这样八个和基本数据类型对应的类统称为包装类(Wrapper Class)。包装类均位于java.lang包,包装类和基本数据类型的对应关系如下表所示:
基本数据类型 |
包装类 |
byte |
Byte |
boolean |
Boolean |
short |
Short |
char |
Character |
int |
Integer |
long |
Long |
float |
Float |
double |
Double |
在这八个类名中,除了Integer和Character类以后,其它六个类的类名和基本数据类型一致,只是类名的第一个字母大写即可。
包装类的用途
对于包装类说,这些类的用途主要包含两种:
a、作为和基本数据类型对应的类类型存在,方便涉及到对象的操作。
b、包含每种基本数据类型的相关属性如最大值、最小值等,以及相关的操作方法(这些操作方法的作用是在基本类型数据、包装类对象、字符串之间提供转化!)。
所有的包装类(Wrapper Class)都有共同的方法他们是:
/*
*测试Integer的用法,其它包装类似
*/
public static void main(String[] args) {
Integer a=new Integer(100);
System.out.println(Integer.MAX_VALUE);
System.out.println(Integer.toHexString(a)); //转16进制
Integer a2=Integer.parseInt("456");
System.out.println(a2);
Integer a3=new Integer("879");
System.out.println(a3.intValue());
String s="234";
String s1=234+"";
System.out.println(s==s1); //true
}