当我们使用集合存储数据的时候,由于集合只能存储引用数据类型,所以如果我们想对基本数据类型进行操作的话,需要把基本数据类型转换成引用数据类型,如

//自动装箱,就是把3这个基本数据类型包装成引用数据类型Integer
Integer i = 3;

//自动拆箱,把包装类型3从箱子里拿出来转换成基本数据类型赋值给a
int a = i;

如果想自己手动拆装箱可以这样做:

Integer i = Integer.valueOf(3);
int a = i.intValue();

这样,我们使用集合来基本数据类型的话就很方便了:

public class KKT {
    public static void main(String[] args) {
        ArrayList<Integer> c = new ArrayList<>();
        Random random = new Random();

        //对c这个集合添加20个Integer包装类
        for (int i = 0; i < 20; i++) {
            //这里隐含了自动装箱,因为nextInt返回的是int,add是调用的ArrayList中的add(Integer)方法
            c.add(random.nextInt(11));
        }

        Iterator<Integer> iterator = c.iterator();
        while (iterator.hasNext()) {
            Integer next = iterator.next();
            //这里隐含了自动拆箱
            System.out.print(next + "\t");
        }
    }
}

以下是包装类的常用方法:

Integer i = 1242;
Integer a = 123;

//i与a比较,若i>a则返回1,相等返回0,反之返回-1
i.compareTo(a);     //返回1

//字符串转基本数据类型,除了Character没有该方法剩下全有
int s = Integer.parseInt("123");    //123