6. 基本类型的包装类(Wrapper类)

d8078c6847356e046c4c4cb095bb4911

(1)包装类的继承关系图解

image

(2)装箱和拆箱

代码示例

package com.baidu.www;

/**
 * 包装类:
 *      简介:
 *          基本数据类型不是对象,所以Java针对基本类型提供了对应的包装类,以对象的形式来使用。
 *
 *          基本类型            对应的                 包装类(可以理解为:就是引用类型)
 *          byte                                    Byte
 *          short                                   Short
 *          int                                     Integer
 *          long                                    Long
 *          char                                    Character
 *          float                                   Float
 *          double                                  Double
 *          boolean                                 Boolean
 *
 *      装箱:
 *          基本类型转包装类型(对象类型)
 *      拆箱:
 *          包装类型(对象类型)转基本类型
 *      成员方法:
 *          基本类型 parseXxx(String): 将字符串类型的数据转换成对应的基本类型
 *          
 *      注意:
 *          除了Character类外,其它七种都有parseSxx()方法
 *          因为如果字符串想转换成char类型的数据,可以通过String类中的方法toCharArray() / charAt() 
 */

public class Test {
    public static void main(String[] args) {
        // 变量a属于基本类型,不能通过 对象名. 的形式调用方法
        // 解决方法:将其转换成对应的包装类(引用类型)即可
        int a = 10;

        // 将基本类型数据转换为引用类型 -> 装箱
        Integer i1 = new Integer(a);
        Integer i11 = Integer.valueOf(a);

        // 将包装类型转换为基本数据类型 -> 拆箱
        System.out.println(i1.intValue());

        // JDK5的新特性,自动拆装箱
        System.out.println("========================");
        Integer i2 = 20; // 自动走valueOf方法
        int c = i2; // 自动走intValue方法
        System.out.println(i2);
        System.out.println(c);

        // 成员方法的调用
        // 将字符串类型转换为int类型
        System.out.println("========================");
        String str = "10";
        int num = Integer.parseInt(str);
        System.out.println(num);
        System.out.println(num + 100);
    }
}

(3)包装类和String类型的相互转换

代码示例

package com.baidu.www;

public class WrapperVSString {
    public static void main(String[] args) {
        // 包装类 -> String
        Integer i = 100; // 自动装箱
        // 方式1
        String str1 = i + ""; // i本身无改变
        // 方式2
        String str2 = i.toString();
        // 方式3
        String str3 = String.valueOf(i);

        // String -> 包装类
        String str4 = "12345";
        Integer i2 = Integer.parseInt(str4); // 使用到自动装箱
        Integer i3 = new Integer(str4); // 构造器
    }
}

(4)包装类的常用方法

f8de02946436e4724b0c2453d2891f9c

posted @ 2025-08-20 19:15  无敌美少女战士  阅读(9)  评论(0)    收藏  举报