包装类,装箱和拆箱

package com.heima.pak;

import java.util.ArrayList;

/*
基本数据类型:
        byte short int long float double boolean char

包装类:java.lang.XXX
        Byte Short Int Long Float Double Boolean Char

装箱:把基本类型数据储存到包装类中
     构造方法:
        Integer(int value) 构造一个新分配的Integer对象,它表示int的值
        Integer(String s) 构造一个新分配的Integer对象,它表示String参数所指示的int值
     静态方法:
        static Integer valueOf(int i) 返回一个表示指定的int值的Integer实例
        static Integer valueOf(String s) 返回保存指定的String的值的Integer对象

     这两个构造方法过时了,一般用这两个静态方法

拆箱:在包装类中取出基本数据类型的数据
 */
public class MyInteger {
    public static void main(String[] args) {

        //装箱
        Integer n1 = new Integer(1);
        System.out.println(n1); //1
        Integer n2 = new Integer("1");
        System.out.println(n2); //1
        //Integer n2 = new Integer("a"); 这样会报错
        Integer a1 = Integer.valueOf(1);
        System.out.println(a1); //1
        Integer a2 = Integer.valueOf("1");
        System.out.println(a2); //1

        //拆箱
        int i = n1.intValue();
        System.out.println(i); //1

        //JDK1.5以后装箱和拆箱自动进行
        //自动装箱
        Integer m1 = 1; //相当于Integer m1 = new Integer(1),把基本类型的值直接复制给包装类

        //自动拆箱: m1是包装类,无法直接参与计算,需要拆箱后再+1,加完后再装箱并赋值给m1

        m1 = m1+1;

        ArrayList<Integer> list = new ArrayList<>();
        list.add(1); //自动装箱
        int h = list.get(0); //自动拆箱

    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值