包装类及常量池

问题引入

基本数据类型无法当成引用数据类型使用

包装类

八种基本类型对应包装类:

byte ---- Byte 1字节
short ---- Short 2字节
char ---- Character 2字节
int ---- Integer 4字节
long — Long 8字节
float — Float 4字节
double — Double 8字节
boolean — Boolean

装箱和拆箱

Integer为例,常见操作:
 *      1)将基本数据类型转换为对应的包装类 --- 装箱
 *          int --- > Integer
 *              |-- 手动装箱(了解)
 *              |-- 自动装箱
 *       2)将包装类转换为对应的基本数据类型 --- 拆箱
 *            Integer --- > int
 *               |-- 手动拆箱(了解)
 *               |-- 自动拆箱
 //手动装箱(了解)
        int a =10;
        Integer i = Integer.valueOf(a);
        System.out.println(i);

        //自动装箱
        int b = 10;
        Integer j = b;
        System.out.println(j);

        //手动拆箱(了解)
        int a1 = i.intValue();
        System.out.println(a1);

        //自动拆箱
        int b1 = j;
        System.out.println(b1);
基本数据类型与字符串之间的转换
 3)基本数据类型和字符串类型的转换
 *              int --- >String
 *              5  --->  "5"
 *                  * 基本数据类型 + " "
 *                  * Integer.toString(int a)
 *              String ---> int
 *                  *** Integer.parseInt(String str)
 * 
   int p1 =Integer.parseInt("100");
        System.out.println(p1 + 1);
        double p2 =Double.parseDouble("123.32");
        System.out.println(p2 + 3);

常量池

  4)包装类的常量池  ---Integer为例
 *              *equals判断值是否相等
 *              *Integer常量池范围为-128~127
 * 
 		Integer k1 = 100;
        Integer k2 = 100;
        System.out.println(k1 == k2);
        System.out.println(k1.equals(k2));

        Integer k3 = 128;
        Integer k4 = 128;
        System.out.println(k3 == k4);
        System.out.println(k3.equals(k4));
        System.out.println("------------------------------------------------");
        Integer l1 = Integer.valueOf(127);
        Integer l2 = Integer.valueOf(127);
        System.out.println(l1 == l2);
        System.out.println(l1 .equals(l2));

        Integer l3 = Integer.valueOf(128);
        Integer l4 = Integer.valueOf(128);
        System.out.println(l3 == l4);
        System.out.println(l3 .equals(l4));
        System.out.println("--------------------------------------------------");

        Integer m1 = new Integer(100);
        Integer m2 = new Integer(100);
        System.out.println(m1 == m2);

        System.out.println("--------------------------------------------------------");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值