JavaSE 6.0学习(封装类---鸿沟上的桥梁)

来源:互联网 发布:美版iphone有4g网络 编辑:程序博客网 时间:2024/04/30 09:02

 

1.       封装类可以提供两方面的功能:

将基本数据类型封装后当作对象来进行操作;

为基本数据类型提供各种转换功能。

2.       封装类的构造器

例如: Boolean(String s) Boolean(Boolean value)

       Byte(String s) Byte(byte value)

       Character(Char value)

       Interger(String s)Integer(int value)

3.       基本数据类型转换成字符串:

无参的非静态方法: toString()

例: int x = 10;        //定义一个int型的基本数据

     Integer i = new Integer(x);  // 将基本数据封装为Integer对象

     String s = i.toString();   //调用toString()方法进行转换

 

     Double d = new Double(12.56);  //直接创建一个封装类对象

     String s = d.toString();  //调用封装类对象的toString()方法进行转换

说明:对象引用之所以可以直接使用”System.out.println()”语句打印,是因为用“System.out.println()”语句打印对象引用时,会自动调用引用所指向对象的“toString()”方法获取对象的字符串表示,另外,若引用为null则打印null字符串。

 

有参的静态方法: toString(xxx)        //xxx表示基本数据类型的值

                 toString(xxx,sss)      //转换为指定进制sss对应的字符串

                 toBinaryString(xxx)   //转换为二进制对应的字符串

                 toOctalString(xxx)    //转换为八进制对应的字符串

                 toHexString(xxx)   //转换为十六进制对应的字符串

例:boolean b = False;

String s = Boolean.toString(b); 

 

int i = 20;

String s = Integer.toString(20);

String s = Integer.toBinaryString(20);

 

4.       字符串转换为基本数据类型

非静态转换方法xxxValue() ,其中xxx为基本数据类型名。

使用方法: 先使用对应的构造器创建封装类对象,再用xxxValue系列方法提取值。

例:String s = “56”;

Integer integer = new Integer(s);

int i = integer.intValue();

double d = integer.doubleValue();

 

String s = “False”;

Boolean b = new Boolean(s);

boolean a = b.booleanValue();

 

静态转换方法parseXxxString s

             parseXxxString sint i   

例: boolean b = Boolean.paresBoolean(“false”);

     int i = Integer.parseInt(“20”);

     int i = Integer.parseInt(“100101”,2);

     double d = Double.parseDouble(“35.2”);

 

创建封装类的时候,除了可以使用new操作符调用构造器外,还可以使用静态工厂方法valueOf(),该方法将返回对应的封装类对象。

静态工厂方法 valueOf(xxx)   // xxx为基本数据类型的值

         valueOf(String s)

         valueOf(String s ,int i) // i代表数值的进制

例: Double d1 = Double.valueOf(35.8); //用基本数据类型创建对象

     Double d2 = Double.valueOf(“35.8”); //用字符串创建对象

    

5.       自动打包

JavaSE 5.0之后,可以直接将基本数据类型的值当作封装类对象使用,系统会自动进行封装,但不是说基本数据类型就是对象了。

6.       自动解包

JavaSE 5.0之后,可以直接将封装器对象赋值给基本数据类型的变量,但不是说封装类对象能直接当作基本数据类型使用,而是说编译的时候,编译器帮读者把解包的代码给添上了。