【Java笔记】包装类

1.包装类与基本数据类型

包装类


1.作用:使基本数据类型像对象一样,拥有1.属性、方法 2.可以对象化交互

2.基本数据类型对应的包装类

在这里插入图片描述

2.基本数据类型和包装类之间的转换

装箱:基本数据类型----转换---->包装类

拆箱:包装类----转换---->基本数据类型


package Wrap;

public class WrapTestOne {

	public static void main(String[] args) {
		// 装箱:把基本类型转换成包装类型
		
		//1、自动装箱
		int t1=2;
		Integer t2 = t1;
		System.out.println("int类型变量t1="+t1);
		System.out.println("Integer类型变量t2="+t2);
		//2、手动装箱
		Integer t3 = new Integer(t1);
		System.out.println("Integer类型变量t3="+t3);
		
		System.out.println("______________________________________________________");
		
		//拆箱:把包装类转换成基本数据类型
		
		//1、自动拆箱
		int t4 = t2;//t2为包装类
		System.out.println("自动拆箱后,int类型的变量t4="+t4);
		//2、手动拆箱
		int t5=t2.intValue();
		System.out.println("手动拆箱后,int类型的变量t5="+t5);
		double t6 = t2.doubleValue();
		System.out.println("手动拆箱后,double类型变量t6="+t6);
		

	}

}

3.基本数据类型和字符串之间的转换


package Wrap;

public class WrapTestTwo {

	public static void main(String[] args) {
		//基本数据类型转换为字符串
		int t1=2;
		String t2=Integer.toString(t1);
		System.out.println("int类型转换成String类型对象t2="+t2);
		
		System.out.println("________________________________________________________________");
		
		//字符串转换成基本数据类型
		//1、cparseInt(t2)
		int t3 = Integer.parseInt(t2);
		System.out.println("String类型转换成int类型变量t3="+t3);
		//2、包装类的valueOf	先将字符串转换为包装类,再通过自动拆箱完成基本数据类型转换
		int t4 = Integer.valueOf(t2);
		System.out.println("String类型转换成int类型变量t3="+t4);

	}

}

4.需要知道的几点知识


1、包装类的初始值

  • 基本数据类型的初始值

在这里插入图片描述

  • 包装类的初始值都是:null

2、包装类对象的比较

案例

package wrap;

public class WrapperTest {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Integer one=new Integer(100);
		Integer two=new Integer(100);
		System.out.println("one==two的结果:"+(one==two));//1.false
		
		Integer three=100;//自动装箱
		//Integer three=Integer.valueOf(100);
		System.out.println("three==100的结果:"+(three==100));//2.自动拆箱,true
		
		//Integer four=100;
		Integer four=Integer.valueOf(100);
		System.out.println("three==four的结果:"+(three==four));//3.true ,因为调用对象池(缓存区)里的对象
		
		Integer five=200;
		System.out.println("five==200的结果:"+(five==200));//4.true
		
		Integer six=200;
		System.out.println("five==six的结果:"+(five==six));//5.false,因为数值超出-128~127,所以不产生对象池
		
		Double d1=Double.valueOf(100);
		System.out.println("d1==100的结果:"+(d1==100));//true
		
		Double d2=Double.valueOf(100);
		System.out.println("d1==d2的结果:"+(d1==d2));//false,float和double包装类不能使用对象池
	}

}

总结:

  • 对象和对象:比较引用地址,比较时注意对象池
    在这里插入图片描述

    • 注意:float和double的包装类不能使用对象池
  • 对象和基本数据类型:程序自动拆箱,比较基本数据类型数值

3、两包装类相加

在这里插入图片描述

  • 注意:float和double的包装类不能使用对象池
  • 对象和基本数据类型:程序自动拆箱,比较基本数据类型数值
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值