当前位置 博文首页 > 文章内容

    Java 包装类

    作者: 栏目:未分类 时间:2020-10-24 18:00:49

    本站于2023年9月4日。收到“大连君*****咨询有限公司”通知
    说我们IIS7站长博客,有一篇博文用了他们的图片。
    要求我们给他们一张图片6000元。要不然法院告我们

    为避免不必要的麻烦,IIS7站长博客,全站内容图片下架、并积极应诉
    博文内容全部不再显示,请需要相关资讯的站长朋友到必应搜索。谢谢!

    另祝:版权碰瓷诈骗团伙,早日弃暗投明。

    相关新闻:借版权之名、行诈骗之实,周某因犯诈骗罪被判处有期徒刑十一年六个月

    叹!百花齐放的时代,渐行渐远!



    Java 包装类

    Java 使用基本类型(如int、double、char和boolean)及类和对象来表示数据,要管理的数据仅有两类,即基本类型值及对象引用。但当你想用处理对象的一样的方式来处理基本类型的数据时,必须将基本类型值 “包装” 为一个对象。为此,Java 提供了包装类。
    包装(wrapper)类 表示一种特殊的基本类型。例如,Integer 类表示一个普通的整型量。由Integer类创建的对象只保存一个int值。包装类的构造方法接受一个基本类型的值,并保存它。

    Integer ageObj = new Integer(40);
    

    执行后,ageObj 对象就将整数 40 看作一个对象。它可以用在程序中需要对象而不是需要基本类型值的地方。
    对于 Java 中的每种基本数据类型,在 Java 类库中都有一个对应的包装类。所有的包装类都定义在 java.lang 包中。

    基本数据类型 包装类
    byte Byte
    short Short
    int Integer
    long Long
    float Float
    double Double
    char Character
    boolean Boolean
    void Void

    注意:对于void类型的包装类是 Void。但和其他的包装类不一样的是,Void类不能被实例化。它只表示 void 引用的概念。

    包装类提供了几种方法,可以对相应的基本数据类型的值进行操作。 下面列举Integer类中的几个方法。其他的包装类有类似的方法。

    • Intger(int value):构造方法,创建新的Integer对象,用来保存 value 的值。
    • byte byteValue()、double doubleValue()、float floatValue()、int intValue()、long longValue():按对应的基本数据类型返回Integer对象的值。
    • static int parseInt(String str):按 int 类型返回存储在指定字符串 str 中的值;
    • static String toBinaryString(int num)、static String toHexString(int num)、static String toOctalString(int num):将指定的整型值在对应的进制下按字符串形式返回。

    Java 包装类中常常含有常量,如Integer.MIN_VALUE 和 MAX_VALUE,它们分别保存 int 的最大值和最小值。其他类中也有相似的常量。
    自动将 基本数据类型 转为 对应的包装类 的过程称为 自动装箱(Autoboxing)。例如:

    Integer obj1;
    int num1 = 69;
    obj1 = num1;  // 自动创建 Integer 对象
    

    逆向的转换称为 拆箱(unboxing),需要时也是自动完成的。例如:

    Integer obj2 = new Integer(69);
    int num2;
    num2 = obj2;  // 自动解析出 int 型
    

    一般来说,基本数据类型与对象之间的赋值是不相容的。自动装箱仅能用在基本数据类型与对应的包装类之间。