zoukankan      html  css  js  c++  java
  • 浅谈Java的包装类

    一、什么是Java包装类

      所谓Java包装类,就是将Java中的8种基本数据类型分别包装成为类的形式。包装类与基本数据类型的对应关系如下表所示。

    基本数据类型

    包装类

    byte

    Byte

    short

    Short

    int

    Integer

    long

    Long

    float

    Float

    double

    Double

    char

    Character

    boolean

    Boolean

      其中,ByteShortIntegerLongFloatDoubleNumber的子类,CharacterBooleanObject的子类。

    二、为什么会有Java包装类

      Java是一门面向对象的编程语言,提倡“一切皆对象”,而Java中的基本数据类型却不是对象,这就导致当我们要对基本数据类型进行操作的时候会存在诸多不便,比如说,我们要将整型数据转换为字符串,或者将字符串转换为整型、浮点型数据,或者获取某个整数的二进制、八进制、十六进制等等,都需要我们站在对象的角度进行操作,因此将基本数据类型包装成类,以便把基本数据类型当做对象来进行处理。

    三、装箱与拆箱——实现基本数据类型与包装类之间的相互转换

      基本数据类型和包装类之间的转换是通过装箱与拆箱来实现的。包装类提供了装箱和拆箱的方法,例如:

      通过包装类的构造方法,我们可以实现装箱

    Integer a = new Integer(6);//装箱

      通过包装类的拆箱方法,我们可以实现拆箱 

    Float a = new Float(66.6f);//装箱
    float b = a.floatValue();//拆箱

      在JDK1.5之前,装箱与拆箱需要通过以上方式手动实现,在JDK1.5之后,Java提供了自动装箱和拆箱机制,例如:

    Integer i = 60; //自动装箱
    Float f = 66.6f;//自动装箱
    int a = i;//自动拆箱
    Float b = f;//自动拆箱

    四、包装类的应用

      在实际应用中,通过包装类,我们可以将字符串变为基本数据类型,例如:

    int i = Integer.parseInt(“123”);//将”123”装换为int类型的数据
    float f = Float.parseFloat(“456”);//将”456”转换为float类型的数据

      也可以将基本数据类型变为字符串,例如:

    String s = Integer.toString(123);//将123装换为字符串

      还可以进行二进制、八进制、十进制、十六进制之间的转换,例如:

    int m = 10;
    String binaryString = Integer.toBinaryString(m);//获取m的二进制形式
    String hexString = Integer.toHexString(m);//获取m的十六进制形式
    String octalString = Integer.toOctalString(m)//获取m的八进制形式

      除此之外,包装类提供的API还可以完成很多操作。

    五、总结

      Java的包装类是站在面向对象的角度上对基本数据类型的封装,是为了在程序中用面向对象的思想去操作基本数据类型。

  • 相关阅读:
    个人作业——顶会热词进程1.3
    个人作业——顶会热词进程1.2
    每周总结(5.9)
    个人作业2——顶会热词进程1.1
    团队项目冲刺第10天
    CodeForces-1178F1 Short Colorful Strip 区间DP
    LOJ-2362 蚯蚓 队列优化
    Educational Codeforces Round 107 (Rated for Div. 2) G.Chips on a Board 倍增优化DP
    LOJ-2123 最短不公共子串 后缀自动机,子序列自动机
    LGR-084 C Reboot from Blue 贪心 DAG上DP最短路
  • 原文地址:https://www.cnblogs.com/1992monkey/p/5945810.html
Copyright © 2011-2022 走看看