java包装类,拆箱装箱过程

包装类

java分为两大类型:基本数据类型和引用数据类型
基本数据类型仅仅表示数值
包装类:将基本数据类型包装成引用数据类型
byte short int long fload double char boolean void
Byte Short Integer Long Fload Double Character Boolean Void
其中Void要有返回值

    public class PackingDemo {
       public static void main(String[] args) {
    	 int i=20;//装箱:将基本数据类型转换成引用类型
    	 Integer in =new Integer(i);
    	 System.out.println(in);
    	 Integer in1=10;//自动装箱
    	 System.out.println(in1);
    	 
    	 //笔试题  
    	 //自动装箱是jdk1.5之后的内容
    	 //Integer自动装箱底层调用valueof()方法:指定一个-128
    	 //到127的范围,如果在这个范围就返回这个固定值,如果不是就创建一个对象
    	 Integer in2=134;
    	 Integer in3=134;
    	 System.out.println(in2==in3);
    	 //Byte的valueof是固定值,没有新的对象产生 
    	 //Short的valueOf和Integer类似
    	 //Lang 的valueOf和Integer类似
    	 //Float 没有范围,直接new一个新的对象
    	 //Double没有范围,直接创建一个对象
    	 ///Character的valueof和Interger类似
    	 //Boolean 如果是true就返回TRUE 如果是false就返回FALSE
    }

    }
    public class PackingDemo02 {
    	public static void main(String[] args) {
    		// 自动拆箱
    		Integer in=new Integer(10);
    		int i=in;
    		System.out.println(i);
    		//或者
    		int i1=new Integer(10);
    		//底层调用的是charValue()方法 
    		char c=new Character('a');
    		
    		//通过字符串创建Integer,Integer构造方法
    		//里面不能有字母代码实现逻辑,首先判断是否合法
    		//包装类中除了Character其他都有将字符串转换成
    		//包装类的对象
    		//补充:包装类在进行计算时,会自动转换成基本类型(拆箱)
    		//字符串转换成包装类
    		Integer in1=new Integer("234");
    		//包装类的哈希码值是固定的
    		System.out.println(in1.hashCode());
    		//NaN和任何数都不相等,和自身也不相等(0.0/0)
    		//判断数字是否是NaN
    		System.out.println(Double.isNaN(0.0/0));
    		System.out.println(new Double(0.0/0).isNaN());
    		//正无穷(1.0/0)负无穷(-1.0/0)
    			
    	}
    }
    public class PackingDemo03 {
    	public static void main(String[] args) {
    		//将字符串转换成基本的数据类型
    		int i=Integer.parseInt("123");
    		System.out.println(i++);
    		double d=Double.parseDouble("3.2122");
    		//除了true 都是false,true可以忽略大小写。
    		Boolean b=new Boolean("True");
    	}
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值